1.3k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich durchsuche in meinem VBA-Code alle (Unter-)Ordner ab einem bestimmten Pfad nach Dateien mit bestimmten Kriterien:

u.a.
Dim objFileSystemObject As Object
Dim objFolder As Object
Const strPath = "xxx"

For Each objFileWithFolder In objFolder.Files
blabla
Next

Was muss ich vor "blabla" einfügen, damit bestimmte Ordner ausgeschlossen werden? Kann ich das irgendwie mit einem eingebauten "Next" machen?

Danke für eure Hilfe, Gruß
Jojo

3 Antworten

0 Punkte
Beantwortet von marie Experte (2k Punkte)
vielleicht mit einem

if strPath = "xxx" then
mäh mäh
else
blabla
endif
next


Oder welches Kriterium auch immer die bestimmten Ordner haben sollen. Wäre schon sinnvoll Du drückst Dich etwas genauer aus, dass man nicht raten muss welsches die bestimmten Ordner sein sollen.

Gruß Marie
0 Punkte
Beantwortet von marie Experte (2k Punkte)
hm, vermute mal Dein strPath sollte der Ausgangspunkt der Suche sein,

versuches mal mit

For Each Subfolder in Folder.SubFolders
if Subfolder.name <> "xyz"


Nochmal Gruß Marie
0 Punkte
Beantwortet von
Hallo Marie,

sorry, dass ich mich wohl zu undeutlich ausgedrückt habe.

Also, mit strPath steige ich ein.
Set objFileSystemObject = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFileSystemObject.getfolder(strPath)

Danach sollen alle Ordner, die unterhalb strPath liegen, durchsucht werden. Das funktioniert auch wunderbar. Jetzt will ich aber, das bestimmte Unterordner (UND ALLE WEITEREN UNTERORDNER, die dieser enthält), NICHT in der Schleife berücksichtigt werden.

Kann ich jetzt die letzten beiden Zeilen von dir nehmen (d.h. sind Subfolder und Folder.SubFolders allgemein gültig) oder muss ich das auf meine Objekte abändern?

Danke für deine Hilfe!

Viele Grüße
Jojo
...