Neste conteúdo você aprenderá vários métodos diferentes para copiar, colar e recortar usando uma macro no Excel VBA. Aqui você vai encontrar várias formas de executar estes processos. Tenho certeza que você em algum momento já precisou disso.
Para usar estes códigos, abra o Editor do Visual Basic (Alt + F11) e em seguida insira um novo módulo (Inserir > Módulo) e copie e cole o código desejado no módulo.
1 – Copiar, Recortar e Colar uma única célula
Este exemplo copia ou recorta e cola uma única célula, A1 para B1:
Sub Colar_UnicaCelula()
'Copia e Cola uma única célula
Range("A1").Copy Range("B1")
'Recorta e cola uma única célula
Range("A1").Cut Range("B1")
End Sub
2 – Copiar Seleção
Se você deseja copiar a seleção ativa, use isto:
Sub CopiarSelecao()
'Copia e cola uma seleção para um intervalo definido
Selection.copy range("b1")
'Copia e Cola para um Deslocamento de Céula
Selection.copy
Selection.offset(2,1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub

3 – Copiar, Recortar e Colar um Intervalo de Células
Este exemplo copia ou recorta e cola um intervalo de células, A1:A3 sobre B1:B3 :
Sub Cola_Intervalo()
'Copia e Cola um Intervalo de Células
Range("A1:A3").Copy Range("B1:B3")
'Recorta e Cola um Intervalode Células
Range("A1:A3").Cut Range("B1:B3")
End Sub
4 – Copiar, Recortar e Colar uma Coluna Inteira
Este exemplo copia ou recorta e cola uma coluna inteira, de A a B:
Sub ColarUmaColuna()
'Copia e Cola uma Coluna
Range("A:A").Copy Range("B:B")
'Recorta e Cola uma Coluna
Range("A:A").Cut Range("B:B")
End Sub
5 – Copiar, Recortar e Colar uma Linha Inteira
Este exemplo copia ou recorta e cola uma linha inteira, de 1 a 2:
Sub ColarUmaLinha()
'Copia e Cola linha
Range("1:1").Copy Range("2:2")
'Recorta e Cola linha
Range("1:1").Cut Range("2:2")
End Sub
6 – Copiar, Recortar e Colar em Outra Planilha ou Pasta de Trabalho
Sub ColaEmOutroObjeto()
'Recorta, Copia e Cola em outra Planilha
Worksheets("sheet1").Range("A1").Copy Worksheets("sheet2").Range("B1") 'Copy
Worksheets("sheet1").Range("A1").Cut Worksheets("sheet2").Range("B1") 'Cut
'Recorta, Copia e Cola em outra Pasta de Trabalho
Workbooks("book1.xlsm").Worksheets("sheet1").Range("A1").Copy _
Workbooks("book2.xlsm").Worksheets("sheet1").Range("B1") 'Copy
Workbooks("book1.xlsm").Worksheets("sheet1").Range("A1").Cut _
Workbooks("book2.xlsm").Worksheets("sheet1").Range("B1") 'Cut
Application.CutCopyMode = False
End Sub
7 – Colar Valor
Normalmente, quando você vai copiar e colar no Excel VBA, você cola todas as propriedades de uma célula: formatação, fórmulas, etc. A colagem de valores permite copiar e colar os valores das células e nada mais. A maneira mais fácil de colar valor no VBA é definir o valor da célula diretamente:
Sub ColarValor()
'VColar valor em Células
Range("B1").value = Range("A1").value
Range("B1:B3").value = Range("A1:A3").value
'Atribuir valores entre Planilhas
Worksheets("sheet2").range("A1").value = Worksheets("sheet1").range("A1").value
'Atribuir valores entre Pasta de Trabalho
Workbooks("book2.xlsm").Worksheets("sheet1").range("A1").value = _
Workbooks("book1.xlsm").Worksheets("sheet1").range("A1").value
Application.CutCopyMode = False
End Sub
8 – Colar Especial
Colar especial permite copiar e colar propriedades específicas de células (exemplos: formatos, valores, larguras de coluna, etc.). Ele também permite que você execute operações especiais de colagem (exemplos: pular espaços em branco, transpor).
Sub ColarEspecial()
Range("A1").Copy
'Cola formatos
Range("B1").PasteSpecial Paste:=xlPasteFormats
'Cola Largura da Coluna
Range("B1").PasteSpecial Paste:=xlPasteColumnWidths
'Cola Fórmulas
Range("B1").PasteSpecial Paste:=xlPasteFormulas
Application.CutCopyMode = False
End Sub
9 – Área de Transferência
Depois de copiar e colar, você pode querer limpar a área de transferência (fazemos em alguns dos exemplos de código acima). Para limpar a área de transferência do Excel, definimos Application.CutCopyMode como False:
Application.CutCopyMode = False
Gostou do conteúdo?
Deixe um comentárrio aqui eembaixo
Até o próximo tutorial!!