Boa noite trabalho na área de almoxarifado e sempre que faço um inventário tenho fazer o relatório manual e estou tentando automatizar o processo, colocando fórmulas.exemplo tem uma coluna de diferença que é a quantidade inventariada menos a quantidade da data do inventário, faço essa fórmula na primeira linha da coluna só que na hora de deixar dinâmica não consigo,na gravação da macro eu aperto pra auto preencher pra todos de baixo,daí tentei usando variável na range só que ele não tá pegando o intervalo todo sempre fica faltando pegar as duas últimas linhas
Código é mas ou menos assim:
últimalinha=sheets (1).usedrange.rows.count
Autofill.range("A1":"A" & últimalinha)(esse autofill é um exemplo não lembro como faz ele sem gravar a macro)
Traduzindo o código acima pedindo pra ele aplicar a mesma fórmula da primeira linha com o preenchimento automático pra todas as de baixo de forma dinâmica,só que mesmo assim não dá certo, sempre as duas últimas linhas ficam sem a fórmula.
Pergunta
Felipe Dragneel
Boa noite trabalho na área de almoxarifado e sempre que faço um inventário tenho fazer o relatório manual e estou tentando automatizar o processo, colocando fórmulas.exemplo tem uma coluna de diferença que é a quantidade inventariada menos a quantidade da data do inventário, faço essa fórmula na primeira linha da coluna só que na hora de deixar dinâmica não consigo,na gravação da macro eu aperto pra auto preencher pra todos de baixo,daí tentei usando variável na range só que ele não tá pegando o intervalo todo sempre fica faltando pegar as duas últimas linhas
Código é mas ou menos assim:
últimalinha=sheets (1).usedrange.rows.count
Autofill.range("A1":"A" & últimalinha)(esse autofill é um exemplo não lembro como faz ele sem gravar a macro)
Traduzindo o código acima pedindo pra ele aplicar a mesma fórmula da primeira linha com o preenchimento automático pra todas as de baixo de forma dinâmica,só que mesmo assim não dá certo, sempre as duas últimas linhas ficam sem a fórmula.
Alguém poderia me ajudar por favor!
Até mesmo no whatsapp pra tentar me explicar
85991706072
Segue aí o código todinho abaixo
Dim ULTIMALINHA As Variant
ULTIMALINHA = Sheets(2).UsedRange.Rows.Count
Application.ScreenUpdating = False
Columns("A:A").Select
Range(Selection, Selection.End(xlToRight)).Select
Columns("A:K").EntireColumn.AutoFit
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Rows("1:2").Select
Range("A2").Activate
Application.CutCopyMode = False
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A2").Select
ActiveCell.FormulaR1C1 = "DATA:" & Date
Range("A3").Select
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 3
Range("J4").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
ActiveCell.Copy
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("K3").Select
Selection.Copy
Range("L3").Select
ActiveSheet.Paste
Range("L3").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "VALOR UNITARIO"
Range("L4").Select
ActiveCell.FormulaR1C1 = "=IFERROR(RC[-1]/RC[-2],""0"")"
Range("L4").Select
Selection.AutoFill Destination:=Range("L4:L" & ULTIMALINHA), Type:=xlFillDefault
Range("L4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.Style = "Currency"
Range("K4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Style = "Currency"
Range("K4").Select
ActiveCell.FormulaR1C1 = "=RC[1]*RC[-1]"
ActiveCell.Copy
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.ScreenUpdating = True
MsgBox "RELATÓRIO ESTÁ DINÂMICO COM FÓRMULAS", vbOKOnly, "SUCESSO"
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.