VBA-Listendateien im Ordner

In diesem Tutorial erfahren Sie, wie Sie die Namen aller Dateien in einem Ordner abrufen und in ein Arbeitsblatt einfügen.

Wenn Sie stattdessen erfahren möchten, wie Sie überprüfen können, ob eine Datei vorhanden ist, können Sie auf diesen Link klicken: VBA File Exists

Verwenden des FileSystemObject zum Abrufen der Liste der Dateien in einem Ordner

Mit VBA können Sie alle Dateien aus einem Ordner auflisten, indem Sie die FileSystemObject.

Wir zeigen, wie Sie eine Liste der Dateien im Ordner erhalten C:\VBA-Ordner und füge es in die erste Spalte des Arbeitsblatts ein. Dieser Ordner besteht aus 5 Dateien, wie in Abbildung 1 gezeigt:

Bild 1. Dateien im Ordner C:\VBA Folder

Hier ist der Code:

1234567891011121314151617181920 Sub LoopThroughFiles ()oFSO als Objekt dimmenoFolder als Objekt dimmenoDatei als Objekt dimmenDim i As IntegerSet oFSO = CreateObject("Scripting.FileSystemObject")Set oFolder = oFSO.GetFolder("C:\VBA-Ordner")Für jede oFile in oFolder.FilesZellen(i + 1, 1) = oFile.Nameich = ich + 1Nächste oDateiEnd Sub

Erstellen Sie im Beispiel zunächst ein Objekt der Klasse Scripting.FileSystemObject:

1 Set oFSO = CreateObject("Scripting.FileSystemObject")

Legen Sie dann den Ordner mit der Methode . fest GetFolder:

1 Set oFolder = oFSO.GetFolder("C:\VBA-Ordner")

Nächste Schleife durch jede Datei in oOrdner, mit oDatei.Name zu Rufen Sie den Namen jeder Datei im Ordner ab und schreiben Sie ihn in die nächste leere Zeile:

123456 Für jede oFile in oFolder.FilesZellen(i + 1, 1) = oFile.Nameich = ich + 1Nächste oDatei

Bild 2. Arbeitsblatt mit der Liste der Dateien im Ordner

Wie Sie in Bild 2 sehen können, sind alle 5 Dateien aus dem C:\VBA-Ordner in der ersten Spalte aufgelistet.

wave wave wave wave wave