Dateien aus Verzeichnis auflisten in Excel
Schritt-für-Schritt-Anleitung
Um alle Dateien eines Ordners in Excel aufzulisten, kannst du den folgenden VBA-Code verwenden. Dieser Code listet die Dateien eines in Zelle A1 angegebenen Pfades auf und zeigt das Dateidatum sowie den Dateinamen in separaten Spalten an.
- Öffne Excel und drücke
ALT + F11, um den VBA-Editor zu öffnen.
- Klicke auf
Einfügen > Modul, um ein neues Modul zu erstellen.
- Kopiere den folgenden Code in das Modul:
Sub ScanDir()
Dim lRow As Long, lCounter As Long
Dim iCol As Integer
lRow = 1
iCol = 1
With Application.FileSearch
.LookIn = Range("A1").Value
.SearchSubFolders = True
.Execute
For lCounter = 1 To .FoundFiles.Count
lRow = lRow + 1
If lRow = 65537 Then
lRow = 2
iCol = iCol + 1
End If
Cells(lRow, iCol).Value = .FoundFiles(lCounter)
Cells(lRow, iCol).Hyperlinks.Add Cells(lRow, iCol), .FoundFiles(lCounter)
Cells(lRow, iCol + 1).Value = FileDateTime(.FoundFiles(lCounter))
Cells(lRow, iCol + 2).Value = Mid(.FoundFiles(lCounter), InStrRev(.FoundFiles(lCounter), "\") + 1)
Next lCounter
End With
Columns.AutoFit
End Sub
- Schließe den VBA-Editor und gehe zurück zu Excel.
- Gib in Zelle A1 den Pfad des Ordners ein, dessen Inhalt du auflisten möchtest.
- Drücke
ALT + F8, wähle ScanDir aus und klicke auf Ausführen.
Dieser Code listet alle Excel-Dateien im Verzeichnis auf und zeigt das Datum sowie den Dateinamen an.
Häufige Fehler und Lösungen
-
Die erste Datei wird nicht angezeigt: Achte darauf, dass die Schleife korrekt konfiguriert ist. Der Code könnte so angepasst werden, dass er bei lRow = 1 beginnt.
-
Fehler beim Ausführen des Codes: Stelle sicher, dass der Pfad in Zelle A1 korrekt eingegeben wurde. Der Pfad sollte existieren und auf ein Verzeichnis verweisen, das Dateien enthält.
Alternative Methoden
Eine Alternative zum VBA-Code ist die Verwendung von Power Query, um den Ordnerinhalt in Excel aufzulisten. Dies funktioniert jedoch nur in Excel 2016 oder neuer.
- Gehe zu
Daten > Daten abrufen > Aus Datei > Aus Ordner.
- Wähle den gewünschten Ordner aus.
- Klicke auf
Transformieren, um die Daten zu bearbeiten und in Excel anzuzeigen.
Diese Methode ermöglicht eine einfache Bearbeitung und Filterung der Daten.
Praktische Beispiele
Wenn du beispielsweise den Inhalt des Ordners C:\Daten\ auflisten möchtest, trage diesen Pfad in Zelle A1 ein und führe den VBA-Code aus. Das Ergebnis könnte wie folgt aussehen:
| Datei (Hyperlink) |
Datum/Zeit |
Dateiname |
| D:\Daten\Mappe1.xls |
12.08.2023 10:01 |
Mappe1.xls |
| D:\Daten\Test_Datei.xls |
12.08.2023 22:04 |
Test_Datei.xls |
Tipps für Profis
-
Optimierung des Codes: Du kannst den Code weiter optimieren, indem du nur bestimmte Dateitypen auflistest. Ändere die FileType-Eigenschaft in .FileType = msoFileTypeExcelWorkbooks, um nur Excel-Dateien anzuzeigen.
-
Automatisierung: Du könntest den Code so anpassen, dass er automatisch beim Öffnen der Datei ausgeführt wird, um den Inhalt des Ordners stets aktuell zu halten.
FAQ: Häufige Fragen
1. Wie kann ich nur bestimmte Dateitypen auflisten?
Du kannst die FileType-Eigenschaft im VBA-Code anpassen, um nur spezifische Dateitypen wie .xls oder .csv anzuzeigen.
2. Funktioniert dieser Code in allen Excel-Versionen?
Der VBA-Code sollte in den meisten Versionen von Excel funktionieren, jedoch könnte die Application.FileSearch-Methode in neueren Versionen (nach Excel 2007) nicht mehr verfügbar sein. In diesem Fall solltest du alternative Methoden verwenden.