Copiar / Colar Linhas e Colunas em VBA
In this Article
Este tutorial você irá aprender como Copiar (ou Recortar) Linhas (Rows) ou Colunas (Columns) inteiras utilizando o VBA. Vamos tratar de Copiar e Colar intervalos de células em outro artigo.
Primeiro é necessário mostrar como colar ou inserir linhas/colunas e discutir quais são suas diferenças. Então, mostraremos todos os meios diferentes de referenciar linhas e colunas ao copiar or recortar.
Linhas & Colunas – Colar vs. Inserir
Ao colar linhas e colunas você tem duas opções: Você pode colar sobre a linha existente (ou sobre a coluna existente) ou você pode inserir uma nova linha (ou coluna).
Vamos ver a diferença…
Copiar & Colar Sobre Linha / Coluna Existente
O comando abaixo irá copiar a linha 1 e colá-la na linha 5:
Range("1:1").Copy Range("5:5")
De forma semelhante, o comando a seguir irá copiar a coluna C e colá-la na coluna E:
Range("C:C").Copy Range("E:E")
Copiar & Inserir Linha / Coluna
Você também pode inserir a linha / coluna copiada e deslocar as linhas / colunas existentes, criando espaço para a nova linha ou coluna sem afetar as que já existem.
O comando a seguir irá copiar a linha 1 e inserir na linha 5, deslocando para baixo as linhas existentes.:
Range("1:1").Copy
Range("5:5").Insert
De modo semelhante, o comando abaixo irá copiar a coluna C e inserir na coluna E, deslocando as colunas existentes para a direita:
Range("C:C").Copy
Range("E:E").Insert
Copiar a Linha Inteira
Abaixo iremos mostrar várias maneiras diferentes de copiar a linha 1 e colar na linha 5.
Range("1:1").Copy Range("5:5")
Range("A1").EntireRow.Copy Range("A5")
Rows(1).Copy Rows(5)
Recortar e Colar Linhas
Basta apenas usar o comando Recortar (cut) ao invés de Copiar:
Rows(1).Cut Rows(5)
Copiar Várias Linhas
Abaixo estão alguns exemplos que mostram como copiar várias linhas de uma vez:
Range("5:7").Copy Range("10:13")
Range("A5:A7").EntireRow.Copy Range("A10:A13")
Rows(5:7).Copy Rows(10:13)
Copiar a Coluna Inteira
Você pode copiar colunas inteiras de forma similar a que usamos para copiar linhas inteiras::
Range("C:C").Copy Range("E:E")
Range("C1").EntireColumn.Copy Range("C1").EntireColumn
Columns(3).Copy Range(5)
Recortar e Colar Colunas
Basta utilizar o comando Recortar (cut) ao invés de usar o comando Copiar:
Range("C:C").Cut Range("E:E")
Copiar Várias Colunas
Aqui estão exemplos de como copiar várias colunas de uma vez:
Range("C:E").Copy Range("G:I")
Range("C1:E1").EntireColumn.Copy Range("G1:I1")
Columns(3:5).Copy Columns(7:9)
Copiar Linhas ou Colunas para Outra Planilha
Para copiar para outra planilha, basta utilizar o Objeto Sheet:
Sheets("Planilha1").Range("C:E").Copy Sheets("Planilha2").Range("G:I")
Recortar Linhas ou Colunas para Outra Planilha
Você pode utilizar a mesma técnica para Recortar e Colar linhas ou colunas para outra planilha.
Sheets("sheet1").Range("C:E").Cut Sheets("sheet2").Range("G:I")