Dateisuche mit VBA
14.07.2005 12:04:28
Borño
mein problem ist folgendes, ich möchte mir eine datei/ordner-suche mit vba für excel schreiben. die ergebnisse sollen in einem excelblatt erscheinen.
habe schon ein paar varianten mit application.filesearch probiert und das klappt auch alles so weit. das problem ist meine festplatten sind gross und haben ne menge ordner. wenn ich aus der wurzel einer platte suche und "SearchSubFolders = true" setze vergehen stunden oder er bleibt irgendwo hängen!? hier mein suchalgo:
Set DateiSuche = Application.FileSearch
With DateiSuche
.NewSearch
.FileName = DateiName 'aus UserForm
.LookIn = CurDir() 'aus msoFileDialogFolderPicker
.SearchSubFolders = True
.Execute (SortBy:=msoSortByFileName, SortOrder:=msoSortOrderAscending)
If .FoundFiles.Count > 0 Then
ReDim Preserve FileList(5, FileCount + .FoundFiles.Count)
For i = 1 To .FoundFiles.Count
ff = .FoundFiles(i)
FileList(3, FileCount) = .FoundFiles(i) 'Feld wird gefüllt und später
FileList(4, FileCount) = .FoundFiles(i) 'ausgewertet u. dargestellt
FileCount = FileCount + 1
Next i
funktioniert einwandfrei nur wie gesagt das problem entsteht bei zb. suche nach *.xls in d:\ !
Mein neuster versuch ist mit searchscopes,scopefolder usw. zu arbeiten, da ich hoffe wenn ich Execute in jedem Subfolder einzeln ausführe und mir schon mal zwischenergebnisse anzeigen lasse er nicht hängen bleibt.
So nun zu meinen fragen:
wie kann man einen searchscope selber definieren, den msoSearchInCustom Type gibts bei mir nicht, oder wie legt man den fest?
Kann man von einem ScopeFolder-Objekt den Pfad festlegen, wie?
habe bis jetzt nur die möglichkeit realisiert meinen kompletten arbeitsplatz nach angegebenen(Name) ordnern zu durchsuchen und diese dann nach den jeweiligen dateien. möchte aber auch die möglichkeit einen ordner angeben zu können und dann in allen unterordnern nach dateien suchen. Es will mir nicht gelingen den ScopeFolder-Pfad festzulegen.
Ach so noch was, habe in der Werkzeugliste bei zusätliche Steuerelemente den
"search assistant control" gefunden der es scheinbar erlaubt den windows suchassistant komplett zu integrieren, nur wie?
Danke denjenigen die bis hierhin durchgehalten haben!
cu MB