Caros, é o seguinte, estou precisando criar uma macro que faça uma substituição de uma algumas linhas em determinadas células que contem fórmulas, e copie os resultados em outra planilha. Segue um simples exemplo:
Imagine que tenho na coluna "A" 100 valores (A1:A100) e na coluna "B" outros 100 valores (B1:B100). O que eu quero é que os valores de "A1" e "B1" sejam transferidos para outra planilha (Plan 2) para as células "C1" e "D1", respectivamente. Nesta outra planilha tenho uma equação na célula "E1", digamos "=C1+D1". O que eu quero é que todos os valores de (A1:A100) e (B1:B100) seja transferidos automaticamente e que os resultados de "E1" sejam colados como "valores" em outro coluna, ex. "F".
Vocês podem estar se perguntando porque simplesmente não somar todos as células A e B diretamente na primeira planilha, é que este é só um exemplo, na verdade, minha planilha é bem mais complexa e não são só duas variáveis que tenho que substituir e sim uma série e o local onde vai receber taais variáveis é um modelo complexo de equações que não tem como calcular individualmente para cada linha.
abaixo segue um exemplo para as duas primeiras linhas. Eu tenho cerca de 400 linhas e gostaria de fazer isso automático com comandos simples.
Range("A1").Select
Selection.Copy
Range("C1").Select
ActiveSheet.Paste
Range("B1").Select
Application.CutCopyMode = False
Selection.Copy
Range("D1").Select
ActiveSheet.Paste
Range("E1").Select
Application.CutCopyMode = False
Selection.Copy
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A2").Select
Application.CutCopyMode = False
Selection.Copy
Range("C1").Select
ActiveSheet.Paste
Range("B2").Select
Application.CutCopyMode = False
Selection.Copy
Range("D1").Select
ActiveSheet.Paste
Range("E1").Select
Application.CutCopyMode = False
Selection.Copy
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
atenciosamente
Postado : 19/04/2013 8:34 am