Excel VBA: Blatt in Liste von Excel Dateien kopieren
Eine Aufgabe für zwischendurch: Wie kann man ein bestehendes Excel-Blatt in eine Anzahl von anderen Excel-Dateien kopieren?
- Definiere eine benannte Zell-Range, hier „Workbooks“ genannt
- In dieser Liste trage alle Excel-Dateien ein, in die das Muster-Blatt (hier „Template“ genannt) kopiert werden soll.
Hinweis: Ich habe diese Liste mitdir /b *.xlsx
erzeugt. - Setze einen Button in das Sheet und hinterlege als Code das folgende
- Wichtig: Die aktuelle Arbeitsmappe mit dem Button und der Liste liegt im selben Verzeichnis wie die Ziel-Dateien. Wenn nicht, dann muss der Pfad angepasst werden.
Sub Schaltfläche1_Klicken() Dim c As Range For Each c In Range("Workbooks") MsgBox (c.Value) Set kopiereWas = ThisWorkbook.Sheets("Template") Set kopiereWohin = Workbooks.Open(Application.ActiveWorkbook.Path + "\\" + c.Value) kopiereWas.Copy kopiereWohin.Sheets(1) Next c End Sub |
Hinweis: Die Ziel-Arbeitsmappe wird hier nicht geschlossen, werde ich zusammen mit Screenshots nachliefern.