Wie liste ich alle Ordner und Unterordner in Excel auf?
Haben Sie jemals unter diesem Problem gelitten, bei dem alle Ordner und Unterordner aus einem bestimmten Verzeichnis in einem Arbeitsblatt aufgelistet werden? In Excel gibt es keine schnelle und praktische Möglichkeit, den Namen aller Ordner in einem bestimmten Verzeichnis gleichzeitig abzurufen. Dieser Artikel kann Ihnen helfen, die Aufgabe zu bewältigen.
Listen Sie alle Ordner und Unterordner mit VBA-Code auf
Listen Sie alle Ordner und Unterordner mit VBA-Code auf
Wenn Sie alle Ordnernamen aus einem angegebenen Verzeichnis abrufen möchten, kann Ihnen der folgende VBA-Code helfen. Gehen Sie dazu folgendermaßen vor:
1. Halten Sie die Taste gedrückt ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Applikationen-Fenster.
2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das ein Modulfenster.
VBA-Code: Listet alle Ordner und Unterordnernamen auf
Sub FolderNames()
'Update 20141027
Application.ScreenUpdating = False
Dim xPath As String
Dim xWs As Worksheet
Dim fso As Object, j As Long, folder1 As Object
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Choose the folder"
.Show
End With
On Error Resume Next
xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
Application.Workbooks.Add
Set xWs = Application.ActiveSheet
xWs.Cells(1, 1).Value = xPath
xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder1 = fso.getFolder(xPath)
getSubFolder folder1
xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
Application.ScreenUpdating = True
End Sub
Sub getSubFolder(ByRef prntfld As Object)
Dim SubFolder As Object
Dim subfld As Object
Dim xRow As Long
For Each SubFolder In prntfld.SubFolders
xRow = Range("A1").End(xlDown).Row + 1
Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
Next SubFolder
For Each subfld In prntfld.SubFolders
getSubFolder subfld
Next subfld
End Sub
3. Dann drücken F5 Schlüssel zum Ausführen dieses Codes und a Wählen Sie den Ordner Das Fenster wird geöffnet. Anschließend müssen Sie das Verzeichnis auswählen, in dem Sie die Ordner- und Unterordnernamen auflisten möchten. Siehe Abbildung:
4. Klicken Sie OKund Sie erhalten den Pfad, das Verzeichnis, den Namen, das Erstellungsdatum und das Datum der letzten Änderung in einer neuen Arbeitsmappe, siehe Screenshot:
In Verbindung stehender Artikel:
Wie liste ich Dateien in einem Verzeichnis zum Arbeitsblatt in Excel auf?
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!