Método Copy do objeto Range
Quando começamos a aprender VBA, utilizamos o gravador de macros do Excel para descobrir como alguns comandos são feitos via código. Uma das operações mais comuns é a de Copiar e Colar informação de uma célula para outra.

Este post foi originalmente publicado em https://officevbavsto.blogspot.com/2011/05/quickshot-metodo-copy-do-objeto-range.html.
Quando começamos a aprender VBA, utilizamos o gravador de macros do Excel para descobrir como alguns comandos são feitos via código. Uma das operações mais comuns é a de Copiar e Colar informação de uma célula para outra.
Veja a planilha abaixo:

Se você gravar o código para executar a operação de copiar e colar, encontrará algo parecido com o seguinte:
Sub Macro1()
' Macro1 Macro
Range("B2:E10").Select
Selection.Copy
Range("G2").Select
ActiveSheet.Paste
End Sub
Funciona! Entretanto, você utiliza 4 linhas de código para executar uma operação que poderia ser feita com APENAS UMA LINHA!
O método Copy
do objeto Range (ou Selection) possui um argumento que é ignorado pela maioria dos programadores de VBA: Destination.
O código acima poderia ser escrito da seguinte forma:
Range("B2:E10").Copy Range("G2")
Funciona também das seguintes formas:
Selection.Copy Range("G2")
Ou:
WorkSheets("Sheet1").Range("B2:E10").Copy WorkSheets("Sheet2").Range("G2")
Ou:
Workbooks("Pasta1.xls").WorkSheets("Sheet1").Range("B2:E10").Copy _
Workbooks("Pasta2.xls").WorkSheets("Sheet2").Range("G2")
Créditos
Photo by olia danilevich from Pexels
comments powered by Disqus