Range.Copy-Methode (Excel)Range.Copy method (Excel)

Kopiert den Bereich in den angegebenen Bereich oder in die Zwischenablage.Copies the range to the specified range or to the Clipboard.

SyntaxSyntax

Ausdruck.Kopie (Ziel)expression.Copy (Destination)

Ausdruck Eine Variable, die ein Range-Objekt darstellt.expression A variable that represents a Range object.

ParameterParameters

NameName Erforderlich/OptionalRequired/Optional DatentypData type BeschreibungDescription
DestinationDestination OptionalOptional VariantVariant Gibt den neuen Bereich an, in den der angegebene Bereich kopiert wird.Specifies the new range to which the specified range will be copied. Fehlt dieses Argument, kopiert Microsoft Excel den Bereich in die Zwischenablage.If this argument is omitted, Microsoft Excel copies the range to the Clipboard.

RückgabewertReturn value

VariantVariant

BeispielExample

Im folgenden Codebeispiel werden die Formeln in den Zellen A1:D4 in „Sheet1" in die Zellen E5:H8 in „Sheet2" kopiert.The following code example copies the formulas in cells A1:D4 on Sheet1 into cells E5:H8 on Sheet2.

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

Beispielcode bereitgestellt von: Bill Jelen, MrExcel.comSample code provided by: Bill Jelen, MrExcel.com

Das folgende Codebeispiel überprüft den Wert in Spalte D für jede Zeile in Sheet1.The following code example inspects the value in column D for each row in Sheet1. Wenn der Wert in Spalte D "A" entspricht, wird die gesamte Zeile in die nächste leere Zeile von SheetA kopiert.If the value in column D equals "A" the entire row is copied onto SheetA, in the next empty row. Wenn der Wert "B" entspricht, wird die Zeile in SheetB kopiert.If the value equals "B" the row is copied onto SheetB.

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

Über den AutorAbout the contributor

MVP Bill Jelen hat über zwei Dutzend Bücher über Microsoft Excel verfasst.MVP Bill Jelen is the author of more than two dozen books about Microsoft Excel. Er ist regelmäßiger Gast auf TechTV mit Leo Laporte und hostet MrExcel.com, ein Forum mit über 300.000 Fragen und Antworten zu Excel.He is a regular guest on TechTV with Leo Laporte and is the host of MrExcel.com, which includes more than 300,000 questions and answers about Excel.

Siehe auchSee also

Range-ObjektRange Object

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.