Compartilhar via


Método Range.Copy (Excel)

Copia o intervalo para o intervalo especificado ou na área de transferência.

Observação

Interessado em desenvolver soluções que ampliem a experiência do Office em várias plataformas? Confira o novo modelo de Suplementos do Office. Os suplementos do Office ocupam um pequeno espaço em comparação com os suplementos e as soluções do VSTO, e você pode criá-los usando quase qualquer tecnologia de programação da Web, como o HTML5, JavaScript, CSS3 e XML.

Sintaxe

expressão.Copiar (Destino)

expressão Uma variável que representa um objeto de Intervalo.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Destination Opcional Variantes Especifica o novo intervalo para que o intervalo especificado será copiado. Se esse argumento for omitido, o Microsoft Excel copia o intervalo para a área de transferência.

Valor de retorno

Variant

Exemplo

O exemplo de código a seguir copia as fórmulas nas células A1:D4 na Planilha1 para as células E5:H8 na Planilha2.

Worksheets("Sheet1").Range("A1:D4").Copy _ 
    destination:=Worksheets("Sheet2").Range("E5:H8")

O exemplo de código a seguir examina o valor na coluna D para cada linha na Planilha1. Se o valor na coluna D for igual a A, a linha inteira é copiada para a PlanilhaA na próxima linha vazia. Se o valor for igual a B, a linha é copiada para a PlanilhaB.

Public Sub CopyRows() 
    Sheets("Sheet1").Select 
    ' Find the last row of data 
    FinalRow = Cells(Rows.Count, 1).End(xlUp).Row 
    ' Loop through each row 
    For x = 2 To FinalRow 
        ' Decide if to copy based on column D 
        ThisValue = Cells(x, 4).Value 
        If ThisValue = "A" Then 
            Cells(x, 1).Resize(1, 33).Copy 
            Sheets("SheetA").Select 
            NextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1 
            Cells(NextRow, 1).Select 
            ActiveSheet.Paste 
            Sheets("Sheet1").Select 
        ElseIf ThisValue = "B" Then 
            Cells(x, 1).Resize(1, 33).Copy 
            Sheets("SheetB").Select 
            NextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1 
            Cells(NextRow, 1).Select 
            ActiveSheet.Paste 
            Sheets("Sheet1").Select 
        End If 
    Next x 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.