Importieren von Tabellen mit Excel VBA - Einfache Excel-Makros

Inhaltsverzeichnis

Im Folgenden sehen wir uns ein Programm in an Excel VBA das importiert Blätter aus anderen Excel-Dateien in eine Excel-Datei.

Laden Sie Book4.xlsx, Book5.xlsx herunter und fügen Sie sie zu "C:\test\" hinzu.

Lage:

Fügen Sie der Befehlsschaltfläche die folgenden Codezeilen hinzu:

1. Zuerst deklarieren wir zwei Variablen vom Typ String, ein Worksheet-Objekt und eine Variable vom Typ Integer.

Dim-Verzeichnis als String, fileName als String, Blatt als Arbeitsblatt, gesamt als Integer

2. Deaktivieren Sie die Bildschirmaktualisierung und die Anzeige von Warnungen.

Application.ScreenUpdating = False
Application.DisplayAlerts = False

3. Initialisieren Sie das Variablenverzeichnis. Wir verwenden die Dir-Funktion, um die erste *.xl?? Datei in diesem Verzeichnis gespeichert.

Verzeichnis = "c:\test\"
fileName = Dir(Verzeichnis & "*.xl??")

Hinweis: Die Dir-Funktion unterstützt die Verwendung von Platzhaltern mit mehreren Zeichen (*) und einzelnen Zeichen (?), um nach allen verschiedenen Arten von Excel-Dateien zu suchen.

4. Die Variable fileName enthält nun den Namen der ersten im Verzeichnis gefundenen Excel-Datei. Fügen Sie eine Do While-Schleife hinzu.

Do While Dateiname ""
Schleife

Fügen Sie der Schleife die folgenden Codezeilen (bei 5, 6, 7 und 8) hinzu.

5. Es gibt keine einfache Möglichkeit, Arbeitsblätter aus geschlossenen Excel-Dateien zu kopieren. Dazu öffnen wir die Excel-Datei.

Workbooks.Open (Verzeichnis & Dateiname)

6. Importieren Sie die Blätter aus der Excel-Datei in import-sheet.xlsm.

Für jedes Blatt in Arbeitsmappen(Dateiname).Arbeitsblätter
total = Workbooks("import-sheets.xlsm").Worksheets.count
Workbooks(fileName).Worksheets(sheet.Name).Copy _
after:=Workbooks("import-sheets.xlsm").Worksheets(total)
Nächstes Blatt

Erläuterung: Die Variable total verfolgt die Gesamtzahl der Arbeitsblätter von import-sheet.xlsm. Wir verwenden die Copy-Methode des Worksheet-Objekts, um jedes Arbeitsblatt zu kopieren und nach dem letzten Arbeitsblatt von import-sheets.xlsm einzufügen.

7. Schließen Sie die Excel-Datei.

Arbeitsmappen(Dateiname).Schließen

8. Die Dir-Funktion ist eine Sonderfunktion. Um die anderen Excel-Dateien abzurufen, können Sie die Dir-Funktion erneut ohne Argumente verwenden.

Dateiname = Dir()

Hinweis: Wenn keine Dateinamen mehr übereinstimmen, gibt die Dir-Funktion eine Zeichenfolge der Länge Null ("") zurück. Als Ergebnis verlässt Excel VBA die Do While-Schleife.

9. Aktivieren Sie die Bildschirmaktualisierung und die Anzeige von Warnungen wieder (außerhalb der Schleife).

Application.ScreenUpdating = True
Application.DisplayAlerts = True

10. Testen Sie das Programm.

Ergebnis:

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave