Zum Hauptinhalt springen

Wie durchläuft man Arbeitsmappen in einem Verzeichnis und kopiert Daten in ein Master-Arbeitsblatt in Excel?

Author: Siluvia Last Modified: 2025-05-28

Angenommen, Sie haben mehrere Excel-Arbeitsmappen in einem Ordner und müssen alle diese Dateien durchlaufen, um Daten aus einem bestimmten Bereich in einem konsistenten Arbeitsblatt (z. B. Blatt1) in ein Master-Arbeitsblatt zu kopieren. Dieser Leitfaden bietet eine detaillierte VBA-Lösung, um diesen Prozess in Excel zu optimieren.

Durchlaufen Sie Arbeitsmappen in einem Verzeichnis und kopieren Sie Daten mit VBA-Code in ein Master-Arbeitsblatt


Durchlaufen Sie Dateien in einem Verzeichnis und kopieren Sie Daten mit VBA-Code in ein Master-Arbeitsblatt

Wenn Sie Daten aus dem Bereich A1:D4 in allen Sheet1-Arbeitsblättern von Arbeitsmappen in einem bestimmten Ordner in ein Master-Arbeitsblatt kopieren möchten, gehen Sie bitte wie folgt vor.

1. Drücken Sie in der Arbeitsmappe, in der Sie ein Master-Arbeitsblatt erstellen möchten, die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.

2. Klicken Sie im Fenster Microsoft Visual Basic for Applications auf Einfügen > Modul. Kopieren Sie dann den folgenden VBA-Code in das Codefenster.

VBA-Code: Durchlaufen von Dateien in einem Ordner und Kopieren von Daten in ein Master-Arbeitsblatt

Sub Merge2MultiSheets()
    Dim xRg As Range
    Dim xSelItem As Variant
    Dim xFileDlg As FileDialog
    Dim xFileName, xSheetName, xRgStr As String
    Dim xBook, xWorkBook As Workbook
    Dim xSheet As Worksheet
    On Error Resume Next
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    xSheetName = "Sheet1"
    xRgStr = "A1:D4"
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    With xFileDlg
        If .Show = -1 Then
            xSelItem = .SelectedItems.Item(1)
            Set xWorkBook = ThisWorkbook
            Set xSheet = xWorkBook.Sheets("New Sheet")
            If xSheet Is Nothing Then
                xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
                Set xSheet = xWorkBook.Sheets("New Sheet")
            End If
            xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
            If xFileName = "" Then Exit Sub
            Do Until xFileName = ""
               Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
                Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
                xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
                xFileName = Dir()
                xBook.Close
            Loop
        End If
    End With
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Hinweis:

1). Im Code bedeuten „A1:D4“ und „Sheet1“, dass Daten im Bereich A1:D4 aller Sheet1-Arbeitsblätter in das Master-Arbeitsblatt kopiert werden. Und „New Sheet“ ist der Name des neu erstellten Master-Arbeitsblatts.
2). Die Excel-Dateien im spezifischen Ordner sollten nicht geöffnet sein.

3. Drücken Sie die Taste F5, um den Code auszuführen.

4. Wählen Sie im sich öffnenden Durchsuchen-Fenster den Ordner aus, der die Dateien enthält, die Sie durchlaufen möchten, und klicken Sie dann auf die Schaltfläche OK. Siehe Screenshot:

A screenshot of the Browse dialog box in Excel for selecting a folder containing files to loop through

Ein Master-Arbeitsblatt mit dem Namen „New Sheet“ wird am Ende der aktuellen Arbeitsmappe erstellt. Und die Daten im Bereich A1:D4 aller Sheet1 im ausgewählten Ordner werden innerhalb des Arbeitsblatts aufgelistet.


Verwandte Artikel:

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!