In diesem Artikel wird gezeigt, wie Sie mit VBA einen Zellbereich in ein anderes Blatt oder eine andere Arbeitsmappe kopieren.
Weitere Informationen finden Sie in unserem VBA-Tutorial zum Kopieren und Einfügen.
In vorhandenes Blatt kopieren
Um einen Zellbereich von einem Blatt in ein anderes bereits vorhandenes Blatt zu kopieren, können wir den folgenden Code verwenden:
123456 | Unter CopyAndPasteActiveSheet.Range("A1:D10").SelectAuswahl.KopieSheets("Sheet2").SelectActiveSheet.PasteEnd Sub |
Dadurch werden die im aktiven Blattbereich A1:D10 gespeicherten Informationen kopiert und in ein vorhandenes Blatt2 eingefügt. Da wir in Blatt 2 den auszuwählenden Bereich nicht angegeben haben, wird er automatisch in Bereich ("A1") eingefügt. Es werden auch alle Formatierungen in Blatt 2 eingefügt, die sich im Bereich von Blatt 1 befanden.
Wenn wir es an einer anderen Stelle in Blatt 2 einfügen möchten, können wir die Startzelle oder den Startbereich zum Einfügen auswählen. Der folgende Code fügt die Informationen ab Zelle E2 ein.
1234567 | Unter CopyAndPasteToRangeActiveSheet.Range("A1:D10").SelectAuswahl.KopieSheets("Sheet2").SelectBereich("E1").WählenActiveSheet.PasteEnd Sub |
Um die Werte einfach in Blatt 2 einzufügen und die Formatierung nicht einzuschließen, können wir den folgenden Code verwenden. Auch hier müssen wir den Seitenbereich nicht angeben, wenn wir in Zelle A1 einfügen möchten.
123456 | Unter CopyAndPasteValuesActiveSheet.Range("A1:D10").SelectAuswahl.KopieSheets("Sheet2").SelectSelection.PasteSpecial Paste:=xlPasteValuesEnd Sub |
In neues Blatt kopieren
Um zu kopieren und dann in ein neues Blatt einzufügen, können wir den folgenden Code verwenden:
123456 | Unter CopyAndPasteNewSheetActiveSheet.Range("A1:D10").SelectAuswahl.KopieSheets.Add After:=ActiveSheetActiveSheet.PasteEnd Sub |
Um nur Werte zu kopieren, können wir wieder xlPasteValues verwenden.
In vorhandene Arbeitsmappe kopieren
Um vollständig in eine andere Arbeitsmappe zu kopieren und einzufügen, können wir entweder beide Arbeitsmappen bereits geöffnet haben oder den Code verwenden, um eine andere Arbeitsmappe zu öffnen und dann in diese Arbeitsmappe einzufügen.
Dieser Code unten kopiert in eine vorhandene Arbeitsmappe, die bereits geöffnet ist.
1234567 | Sub CopyAndPasteExistingBookBereich("A1:D10").WählenAuswahl.KopieWindows("CombinedBranches.xlsx").AktivierenSheets.Add After:=ActiveSheetActiveSheet.PasteEnd Sub |
VBA-Programmierung | Code Generator arbeitet für Sie!
Dieser Code unten wird kopiert und in ein neues Blatt in einer zweiten Arbeitsmappe eingefügt, die vom Code geöffnet wird.
1234567 | Unter CopyAndPasteOpenWorkbookBereich("A1:D9").WählenAuswahl.KopieWorkbooks.Open Filename:= "C:\ExcelFiles\CombinedBranches.xlsx"Sheets.Add After:=ActiveSheetActiveSheet.PasteEndblatt |
TIPP: Ersetzen Sie den Dateinamen im Argument Workbooks.Open durch Ihren eigenen Dateinamen!
In neue Arbeitsmappe kopieren
Wir können auch Kopieren und Einfügen in eine neue Arbeitsmappe.
123456 | Unter CopyAndPasteNewWorkbookBereich("A1:D9").WählenAuswahl.KopieArbeitsmappen.HinzufügenActiveSheet.PasteEnd Sub |