Hole eine Liste der Unterverzeichnisse in VBA

  • Ich möchte eine Liste aller Unterverzeichnisse in einem Verzeichnis.
  • Wenn das funktioniert möchte ich, um es zu erweitern, um eine rekursive Funktion.

Jedoch meine anfängliche Ansatz, um die Unterverzeichnisse, schlägt fehl. Es zeigt einfach alles, einschließlich Dateien:

sDir = Dir(sPath, vbDirectory)
Do Until LenB(sDir) = 0
    Debug.Print sDir
    sDir = Dir
Loop

Beginnt die Liste mit " .. " und mehrere Ordner und enden mit '.txt " - Dateien.


EDIT:
Ich sollte hinzufügen, dass diese ausgeführt werden muss in Word, nicht Excel (viele Funktionen sind nicht in Word zur Verfügung) und es ist Office 2010.


EDIT 2:

Kann man bestimmen, der Typ der das Ergebnis mit

iAtt = GetAttr(sPath & sDir)
If CBool(iAtt And vbDirectory) Then
   ...
End If 

Aber das gab mir neue Probleme, so dass ich nun mit einem code basiert auf Scripting.FileSystemObject.

InformationsquelleAutor der Frage Matthias Pospiech | 2012-03-22

Schreibe einen Kommentar