Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
984to988
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

LookIn Problem

LookIn Problem
19.06.2008 10:08:00
Reinhard
Hallo Wissende,
mit dem nachstehenden Code lese ich die Namen der xls-Dateien aus einem Verzeichnis samt Unterverzeichnissen aus. Das klappt wohl auch.
Nur, wenn ich bei LookIn wie im Beispiel ein nicht existierendes Verzeichnis angebe, so kommt kein Fehler sondern der Code liefert mir die Dateinamen aus dem aktuellen Arbeitsverzeichnis zurück. genauso wie wenn ich LoookIn einfach weglasse.
Gebe ich ein existierendes Verzeichnis an, so wird korrekt daraus gelesen.
Meine Frage nun, gibt es eine Möglichkeit Filesearch dazu zu bringen nur in dem bei LookIn anggebenen Verzeichnis zu suchen und wenn dieses nicht existiert mir da nicht Dateien aus einem anderen Verzeichnis zu präsentieren sondern es soll bitteschön eine Fehlermeldung bringen oder keine Dateien zurückliefern.
Workarounds wie vor Filesearch mit FolderExist und/oder DriveExist das Vorhandensein des Verzeihcnisses zu überprüfen und auszuwerten sind mir bekannt.
Zusatzfrage, ist dieses Verhalten von LookIn auch bei XL2002 und XL2003 zu beobachten? Bei XL2007 hat sich das ja erledigt mit dem FileSearch :-)

Option Explicit
Sub DatenEinlesen()
Dim wkbNeu As Workbook, wksDataSheet As Worksheet, fs As FileSearch
Dim F As Long
Application.ScreenUpdating = False
Workbooks.Add
Set wkbNeu = ActiveWorkbook
Set fs = Application.FileSearch
'MsgBox Dir("Y:\AusDateiAuslesen\Daten\/nul")
'MsgBox Dir("H:\/nul")
With fs
.NewSearch
.LookIn = "Y:\AusDateiAuslesen\Daten"
.SearchSubFolders = True
.Filename = "*.xls"
If .Execute() > 0 Then
For F = 1 To .FoundFiles.Count
wkbNeu.Sheets(1).Cells(F, 1) = .FoundFiles(F)
Next F
Else
MsgBox "There were no files found."
End If
End With
wkbNeu.Activate
Application.ScreenUpdating = True
End Sub


Danke ^ Gruß
Reinhard

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: LookIn Problem
19.06.2008 10:14:21
Hajo_Zi
Hallo Reinhard,
prüfe doch vorher ob Ordner vorhanden!

Sub Vorhanden_Phad()
'   Fehler falls LW nicht vorhanden
If Dir("C:\Eigene Dateien\")  "" Then
MsgBox "vorhanden"
Else
MkDir "C:\Eigene Dateien\"
MsgBox "nicht vorhanden"
End If
End Sub
Sub Ordner_vorhanden()
'   von Berti Koern
Dim Fso, Ordnername
Set Fso = CreateObject("Scripting.FileSystemObject")
Ordnername = "C:\Eigene Dateien\"
'    MsgBox Fso.FolderExists(Ordnername)
If Fso.FolderExists(Ordnername) = False Then MkDir "C:\Eigene Dateien\"
End Sub



Anzeige
AW: LookIn Problem
19.06.2008 10:23:00
Reinhard
Hallo Hajo,
danke für die prompte Antwort.
Ich schließe aus deiner Antwort, auch in höheren Versinen muß man vor dem FileSearch die Existens des Suchverzeichnisses selbst überprüfen.
Danke dir
Gruß
Reinhard

AW: LookIn Problem
19.06.2008 10:25:07
Hajo_Zi
Hallo Reinhard,
das ist nicht korrekt. In 2007 gibt es FileSearch nicht mehr. Ansonsten Ja.
Gruß Hajo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige