Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Mit VBA Dateien im Ordner zählen

Mit VBA Dateien im Ordner zählen
29.06.2004 10:47:10
der
Hallo!
Wie kann ich mit VBA-Excel die Anzahl der Dateien in einem bestimmten Ordner abfragen?
Dank&Gruß!
der alex
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit VBA Dateien im Ordner zählen
29.06.2004 11:16:57
Worti
Hallo Alex,
so zum Beispiel:


Sub DateiAnzahl()
    Dim Verzeichnis As String
    Dim Dateimaske As String
    Dim Anzahl As Integer
    
    Verzeichnis = "D:\DATA\TRANSFER\"
    Dateimaske = "*.*"
    
    Anzahl = NumberofFilesInDirectory(Verzeichnis, Dateimaske)
End Sub
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Dateien im Ordner mit VBA zählen


Schritt-für-Schritt-Anleitung

Um die Anzahl der Dateien in einem bestimmten Ordner mit VBA zu zählen, kannst du folgendes Vorgehen anwenden:

  1. Öffne deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub DateiAnzahl()
       Dim Verzeichnis As String
       Dim Dateimaske As String
       Dim Anzahl As Integer
    
       Verzeichnis = "D:\DATA\TRANSFER\"  ' Passe den Pfad an deinen Ordner an
       Dateimaske = "*.*"  ' Hier kannst du die Dateiendung anpassen, z.B. "*.xlsx"
    
       Anzahl = NumberofFilesInDirectory(Verzeichnis, Dateimaske)
       MsgBox "Anzahl der Dateien: " & Anzahl
    End Sub
    
    Function NumberofFilesInDirectory(ByVal Verzeichnis As String, ByVal Dateimaske As String) As Integer
       Dim FSO As Object
       Dim Ordner As Object
       Dim Datei As Object
       Dim Zähler As Integer
    
       Set FSO = CreateObject("Scripting.FileSystemObject")
       Set Ordner = FSO.GetFolder(Verzeichnis)
    
       Zähler = 0
       For Each Datei In Ordner.Files
           If Datei.Name Like Dateimaske Then
               Zähler = Zähler + 1
           End If
       Next Datei
    
       NumberofFilesInDirectory = Zähler
    End Function
  4. Ändere den Verzeichnis-Pfad entsprechend, um auf den gewünschten Ordner zuzugreifen.

  5. Schließe den VBA-Editor und führe das Makro aus, um die Anzahl der Dateien im Ordner zu ermitteln.


Häufige Fehler und Lösungen

  • Fehler: "Pfad nicht gefunden"
    Stelle sicher, dass der angegebene Pfad korrekt ist und die Schreibweise stimmt. Überprüfe auch, ob der Ordner existiert.

  • Fehler: Makro läuft nicht
    Überprüfe, ob in Excel die Ausführung von Makros aktiviert ist. Gehe zu Datei > Optionen > Sicherheitscenter > Einstellungen für das Sicherheitscenter und aktiviere die Makros.


Alternative Methoden

Falls du kein VBA verwenden möchtest, kannst du auch eine Formel in Excel nutzen, um die Anzahl der Dateien zu zählen, allerdings ist diese Methode nicht so flexibel wie VBA. Eine Möglichkeit ist die Verwendung der Funktion ZÄHLENWENN, um bestimmte Kriterien zu überprüfen.


Praktische Beispiele

Angenommen, du möchtest nur die .xlsx-Dateien in einem Ordner zählen. Ändere den Dateimaske-Parameter in deinem VBA-Code wie folgt:

Dateimaske = "*.xlsx"

Dies zählt nur die Excel-Dateien im angegebenen Ordner.


Tipps für Profis

  • Verwende den Debugger im VBA-Editor, um den Code Schritt für Schritt durchzugehen und mögliche Fehler schnell zu identifizieren.
  • Dokumentiere deinen Code gut, damit du ihn in der Zukunft leichter anpassen oder wiederverwenden kannst.
  • Experimentiere mit verschiedenen Dateimasken, um spezifische Dateitypen oder -mengen zu zählen.

FAQ: Häufige Fragen

1. Kann ich die Anzahl der Dateien in Unterordnern zählen?
Ja, du kannst den Code anpassen, um auch Unterordner zu durchsuchen. Dafür musst du eine rekursive Funktion implementieren.

2. Funktioniert dieser Code in Excel 2016?
Ja, dieser VBA-Code funktioniert in Excel 2016 und auch in neueren Versionen von Excel. Achte darauf, die Makros zu aktivieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige