Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
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
Inhaltsverzeichnis

Dir() liefert unerwünschte Aliase

Dir() liefert unerwünschte Aliase
03.11.2020 09:43:44
AleXSR700
Hallo zusammen,
lich versuche gerade mithilfe der Dir() zu überprüfen, ob eine Datei vorhanden ist oder nicht. Leider werden hierbei aktuell auch Dateinamen akzeptiert, die nicht exakt dem Namen entsprechen, sondern nur diesen beinhalten.
Bsp.: CheckFilename = "Testname", dann liefert mir dir auch einen Wert für "1Testname332dd".
Erkennt jemand, wo mein Fehler liegt und könnte mir weiterhelfen?

CheckFilename = Cells(1, 1).Value
CheckFilename = Left(CheckFilename, InStr(CheckFilename, ".") - 1)
strFileExists = Dir(FileFolder & CheckFilename & "_signed.pdf")
PauseCounter = 1
Do
If Dir(strFileExists) = "" Then
Application.Wait (Now + TimeValue("0:00:05"))
End If
PauseCounter = PauseCounter + 1
Loop Until Dir(strFileExists)  "" Or PauseCounter = 90

Vielen Dank für eure Hilfe.
Viele Grüße
Alex

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dir() liefert unerwünschte Aliase
03.11.2020 10:12:11
Daniel
Hi
die Prüfung ist falsch.
wenn strFileExist = Dir(…)
dann if strFileExists = ""
Dir() liefert dir den Filenamen, wenn es eine Datei gefunden hat und den Leerstring, wenn nicht.
aber auf dieses Ergebnis nochmal ein DIR draufzusetzen ist Unsinn.
Gruß Daniel
AW: Dir() liefert unerwünschte Aliase
03.11.2020 10:32:08
AleXSR700
Hallo Daniel,
vielen Dank! Genau das habe ich eben auch getestet und wollte es hier gerade als Lösung schreiben.
Aber was ich nicht verstehe: Wieso führt ein erneutes Dir() bei der Bedingung zu einem Ergebnis mit Aliasen? Wieso kommt hier nicht erneut ein Leerstring heraus? Ist es aus Sicht der Codes dann Dir("") und das wäre identisch mit Dir("*")?
Viele Grüße
Alex
Anzeige
AW: Dir() liefert unerwünschte Aliase
03.11.2020 10:37:34
Daniel
Hi
Dir("") liefert bei mir die erste Datei im aktuellen Verzeichnis (welche das immer auch sein mag) und scheint damit das gleiche zu bewirken wie Dir("*")
da jede Datei einen Dateinamen haben muss, macht es keinen Sinn nach einer konkreten Datei mit Namen "" zu suchen.
Gruß Daniel
AW: Dir() liefert unerwünschte Aliase
03.11.2020 10:47:53
AleXSR700
Hallo Daniel,
verstehe. Das erklärt auch das seltsame Ergebnis bei einer meiner Zwischenversuche. Dort hatte ich nämlich Testweise alle Aliase gelöscht und dann kam die namentlich erste Datei des Verzeichnisses.
Vielen Dank und viele Grüße :)
Alex
AW: Dir() liefert unerwünschte Aliase
03.11.2020 10:50:02
Luschi
Hallo Alex,
so durchläuft man ein Verzeichnis und ermittelt alle Dateien mit einem bestimmten Muster:

Sub MachMal()
s1 = "F:\Daten\Downloads\?12*.xlsx"   ''3. u. 4. Stelle '12'
''1. Suche vor der Schleife!
s2 = Dir(s1, vbNormal)
Do While s2  ""
Debug.Print s2
''Weitersuche in der Schleife
s2 = Dir()   'nächste Datei mit gleichem Filter ermitteln
Loop
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige