Datei in Ordner suchen und öffnen mit Teilstring

  • Excel

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    Datei in Ordner suchen und öffnen mit Teilstring

    Moin zusammen,

    ich habe ein etwas größeres Excel Projekt, welches mit VBA unterstützt werden muss.
    Ein Teil an dem ich aktuell fest hänge ist das öffnen anderer Excel Dateien aus meiner Arbeitsmappe heraus.

    Ich habe einen Teil des Dateinamens, der durch den Ordner, in welchem ich suche, absolut eindeutig ist.
    Darüber möchte ich gerne die andere Arbeitsmappe öffnen.

    Dafür nutze ich

    Quellcode

    1. Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    2. Dim Jahr As String
    3. Dim Monat As String
    4. Dim Bericht As String
    5. Dim Dateiname As String
    6. Dim Suchbegriff As String
    7. Dim Pfad As String
    8. Jahr = Right(ActiveSheet.Name, 4)
    9. Monat = Left(ActiveSheet.Name, InStr(ActiveSheet.Name, " "))
    10. If Sh.Name = "Bericht" Then Exit Sub
    11. If Target.Column <> 14 Then Exit Sub
    12. If Target.Value Like "####" Then
    13. Pfad = "C:\Users\benzp\Desktop\Berichte\" & Jahr & "\" & Monat & "\"
    14. Suchbegriff = Target.Value
    15. Dateiname = Dir(Pfad & "*" & Suchbegriff & "*")
    16. If Dateiname <> "" Then
    17. Workbooks.Open Pfad & Dateiname
    18. End If


    Das Problem dabei ist, dass die Variable "Dateiname" dabei leer bleibt.

    Wenn ich allerdings quasi den gleichen Code

    Quellcode

    1. Test = Dir("C:\...\Berichte\2020\Juli\*9074*")
    2. Debug.Print Test

    in einem gesonderten Makro ausführe, findet er die Datei und gibt mir auch den vollständigen Dateinamen aus.

    Kann mir einer erklären, wo der Unterschied der beiden Varianten ist?

    Beste Grüße