VBA Copy Paste - Principais maneiras de copiar e colar em VBA (com exemplos)

Copiar Colar no VBA é semelhante ao que fazemos na planilha do Excel, como podemos copiar um valor e colá-lo em outra célula também podemos usar colar especial para colar apenas os valores, da mesma forma no VBA, usamos o método de cópia com propriedade de intervalo copie um valor de uma célula para outra e para colar o valor usamos a função de planilha colar especial ou método colar.

Como copiar e colar no VBA?

Abaixo estão alguns exemplos de como copiar e colar no Excel usando o VBA.

A coisa básica que fazemos no Excel é copiar, recortar e colar os dados de uma célula para outra. Também não requer introdução especial. No entanto, enquanto aprende a codificação VBA, é importante entender o mesmo conceito na linguagem de codificação. Copiar e colar em VBA é a tarefa de rotina que fazemos no dia a dia no excel. Para copiar primeiro, precisamos decidir qual célula copiar.

Exemplo # 1 - Copiar e colar valores usando objeto Range

Suponha que você tenha a palavra “Excel VBA” na célula A1.

Digamos, por exemplo, se você deseja copiar a célula A1, podemos usar o objeto VBA RANGE.

Código:

Sub Copy_Example () Intervalo ("A1"). End Sub

No momento em que você faz referência à célula, podemos ver todas as propriedades e métodos com ela. Portanto, selecione o método “ Copiar”.

Código:

Sub Copy_Example () Range ("A1"). Copiar End Sub

Após selecionar o método, pressione a tecla de espaço para ver o argumento do método Copy.

Diz Destino.

Isso não é nada, mas onde você deseja copiar e colar os valores no VBA sem selecionar o método PASTE.

Se estivermos colando na mesma folha, podemos selecionar a célula usando o objeto Range. Digamos que se desejamos colar o valor na célula B3, podemos colocar o destino como “Faixa (“ B3 ”).”

Código:

Sub Copy_Example () Range ("A1"). Destino da cópia: = Range ("B3") End Sub

Isso irá copiar os dados da célula A1 e colar na célula B3.

Também podemos usar o método abaixo para colar os dados.

Código:

Sub Copy_Example () Range ("A1"). Copiar Range ("B3"). Selecione ActiveSheet.Paste End Sub

Primeiro, vamos copiar e selecionar os dados da célula A1 e colar na célula B3.

Exemplo # 2 - Copiar para outra planilha na mesma pasta de trabalho

Agora, se quisermos copiar e colar o valor das diferentes planilhas usando a macro VBA, no argumento Destino, precisamos fazer referência ao nome da planilha usando o objeto PLANILHAS e, em seguida, mencionar o intervalo de células nessa PLANILHA. O código abaixo fará o trabalho.

Código:

Sub Copy_Example () Range ("A1"). Destino da cópia: = Worksheets ("Sheet2"). Range ("B3") End Sub

Se quisermos copiar os dados de uma determinada planilha e colar em outra, precisamos mencionar os dois nomes das planilhas.

Em primeiro lugar, precisamos mencionar a folha de cópia.

Planilhas ("Folha1"). Intervalo ("A1"). Copiar

Em seguida, no argumento Destino, precisamos mencionar o nome da planilha de destino e o intervalo da célula.

Destino: = Planilhas ("Folha2"). Faixa ("B3")

Portanto, o código deve gostar disso.

Código:

Sub Copy_Example () Worksheets ("Sheet1"). Range ("A1"). Copy Destination: = Worksheets ("Sheet2"). Range ("B3") End Sub

Exemplo # 3 - Copiar de uma pasta de trabalho para outra pasta de trabalho

Vimos como copiar de uma planilha para outra planilha na mesma pasta de trabalho. Mas também podemos fazer isso de uma pasta de trabalho para outra.

Dê uma olhada no código abaixo.

Código:

SubCopy_Example () Workbooks ("Book 1.xlsx"). Worksheets ("Sheet1"). Range ("A1"). Copy Workbooks ("Book 2.xlsx"). Ative ActiveWorkbook.Worksheets ("Sheet 2"). Selecione ActiveSheet.Paste End Sub

Primeiramente ele irá copiar os dados da planilha “Plan1” na apostila “Book1.xlsx” da célula A1.

Workbooks("Book 1.xlsx").Worksheets("Sheet1").Range("A1").Copy”

Then it will activate the workbook “Book 2.xlsx”.

Workbooks("Book 2.xlsx").Activate

In the active workbook, it will select the worksheet “Sheet 2.”

ActiveWorkbook.Worksheets("Sheet 2").Select

Now in the active sheet, it will paste.

ActiveSheet.Paste

Alternative Way for using Copy-Paste in VBA

We have one more alternative way of having the data from one cell to another cell. Assume you have the word “Excel VBA” in the cell A1 and you need the same to come in cell B3.

One method we have seen is using the VBA copy and paste method. Now I will show you one of the alternative ways. Look at the below piece of code to understand.

Code:

Sub Copy_Example1() Range("A1").Value = Range("B3").Value End Sub

The above says whatever the value is there in the cell A1 should be equal to the value in the cell B3.

Range("A1").Value = Range("B3").Value

Even though this is not a copy and paste method still adds more value to our coding knowledge.

Top Ways of VBA Copy and Paste as Values

Now we will see different ways of VBA copy and paste values. Assume you are in the cell A1 as shown in the below image.

  • If we want to copy and paste, we need to reference the cell here. Rather we can just use a property of Selection. Copy method.

Code:

Sub Copy_Example1() Selection.Copy Destination:=Range("B3") End Sub

OR

Sub Copy_Example1() ActiveCell.Copy Destination:=Range("B3") End Sub
  • If you want to copy the entire used range of the worksheet, you can use the below code.

Code:

Sub Copy_Example2 () Worksheets ("Sheet1"). UsedRange.Copy Destination: = Worksheets ("Sheet2"). Range ("A1") End Sub

Isso copiará todo o intervalo usado na planilha “Planilha1” e colará o mesmo na planilha “Planilha2”.

Artigos interessantes...