Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateisuche mit Platzhalter

Dateisuche mit Platzhalter
31.05.2022 10:09:49
Andy_69
Hallo zusammen,
Ich möchte bei meiner Suche ob die Datei vorhanden ist, zusätzlich ein Platzhalter "*" bei der Fz-Nummer im Pfad einbauen, da der Ordner zusätzlich noch Zeichen hinten dran haben kann.
Meine Idee war, ein Stern in folgender Zeile einzubinden, funktioniert aber so nicht:
Pf = Pf & Right(Cells(i, 1), 8) & "*" & "\" 'Fz-Nummer
Ausschnitt aus der Programmierung die Dank Euch auch schon super funktioniert:
...
Dim sPath, Tx, Pf As String
sPath = "\\Glw_04\L.RBA_42\Abteilung\Tfz_E_Lok\E-Lok_Dokumente und Protokolle\" 'Pfad
...
Tx = Format(Cells(i, 4), "yyyy.mm.dd") 'Datum
Tx = Tx & " GN " & Right(Cells(i, 1), 8) 'Fz-Nummer
Tx = Tx & " (" & Cells(i, 2) & ")" 'IH-Stufe aus Liste
Tx = Tx & ".pdf"
Pf = sPath 'Pfad/Glw
Pf = Pf & "BR " & Cells(i, 16) & "\" 'Bauart
Pf = Pf & Right(Cells(i, 1), 8) & "\" 'Fz-Nummer
If Dir(Pf & Tx) "" Then 'Prüfen ob Datei vorhanden
Cells(i, 6) = "ja" 'Datei vorhanden
Cells(i, 5).Value = Date 'Datum setzen
GoTo Ende
Else
Cells(i, 6).Value = "nein" 'Datei nicht vorhanden
End If
...
Vielen Dank für Eure Hilfe
vg Andy
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateisuche mit Platzhalter
31.05.2022 10:43:45
Oberschlumpf
Hi Andy,
mit sPath = "\\Glw... hast du ja schon mal den Hauptordner, in dem - alles - drin steht.
Und mit Pf = Pf & "BR " & Cells(i, 16) & "\" 'Bauart bist du schon mal bis zum Unterordner "Bauart" gekommen, in dem du jetzt - den Ordner - mit der richtigen Fz-Nummer finden musst/willst.
Ab hier, würde ich sagen, müsstest du jeden Unterordner-Namen auslesen, bis du - den - Ordner findest, in dessen Name die letzten 8 Zeichen aus Right(Cells(i, 1), 8) enthalten sind plus eben noch weitere Zeichen
Versuch es mal so (Voraussetzung: Right(Cells(i, 1), 8) darf in nur 1 Unterordner enthalten sein; trifft das zu, oder enthalten mehrere Ordner Right(Cells(i, 1), 8) + andere weitere Zeichen?)
schreib direkt unterhalb dieser Zeile...

Pf = Pf & "BR " & Cells(i, 16) & "\" 'Bauart
...diesen Code (ungetestet von mir, da ich ja deine Datei nich kenne)

Dim lstrPath As String
lstrPath = Dir(Pf, vbDirectory)
Do Until lstrPath = ""
If (GetAttr(Pf & lstrPath) And vbDirectory) = vbDirectory Then
If Instr(Pf & lstrPath, Right(Cells(i, 1), 8)) > 0 Then
Cells(i, 6) = "ja" 'Datei vorhanden
Cells(i, 5).Value = Date 'Datum setzen
Exit Do
End If
End If
lstrPath = Dir
Loop
If Cells(i, 6).Value = "" Then
Cells(i, 6).Value = "nein" 'Datei nicht vorhanden
End If
Hilfts?
Eine andere Idee hab ich nicht.
Ciao
Thorsten
Anzeige
AW: Dateisuche mit Platzhalter
31.05.2022 11:50:12
Andy_69
Hallo Thorsten,
Ich habe die Lösung vom Karl-Heinz genommen, die kam mir auf die schnelle einfacher vor.
Trotzdem vielen Dank für die schnelle Antwort.
Wünsche noch einen schönen Tag
AW: Dateisuche mit Platzhalter
31.05.2022 10:49:26
volti
Hallo,
hier eine Idee (ungetestet) und nur für den Fall, dass es nur einen Ordner passend zum Platzhalter gibt.
Ansonsten musst Du alle Ordner durchscannen.


Pf = sPath 'Pfad/Glw
Pf = Pf & "BR " & Cells(i, 16) & "\"    'Bauart
Pf2 = Dir$(Pf & Right(Cells(i, 1), 8) & "*", vbDirectory) 'Fz-Nummer
If Dir(Pf & Pf2 & "\" & Tx)  "" Then  'Prüfen ob Datei vorhanden
Gruß
Karl-Heinz
Anzeige
AW: Dateisuche mit Platzhalter
31.05.2022 11:48:35
Andy_69
Hallo Karl-Heinz,
Vielen Dank für die schnell Lösung.
Ich konnte damit was anfangen und es funktioniert genau so wie ich es möchte.
Vielen Dank und noch einen schönen Tag
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige