Office: Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA

Helfe beim Thema Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Leute, Hoffentlich könnt ihr mir hier helfen, ich krieg den Syntax einfach nicht hin (wahrscheinlich ist es auch totaler käse den ich... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Lizz96, 17. April 2024.

  1. Lizz96 User

    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA


    Hallo Leute,

    Hoffentlich könnt ihr mir hier helfen, ich krieg den Syntax einfach nicht hin (wahrscheinlich ist es auch totaler käse den ich programmiert habe).

    Also im Grunde soll eine Datei geöffnet werden, das funktioniert auch. Diese hat immer den gleichen namen: „Test.xlsx“

    Wenn es nur eine Datei ist, dann kann ich sie so aufrufen:

    Jetzt kann es aber sein das die datei nicht immer auf C:\Temp\ liegt sondern evt. Auf D:\Temp\Test.xlsx oder E:\Temp\ usw.

    Wie könnte ich das nun am geschicktesten machen das er zuerst im 1 verzeichnis schaut, wenn dort nichts ist im 2ten, wenn dort nichts ist im 3ten und dann irgendwann nach 3-4 verzeichnissen sagt: nööö – Datei nicht vorhanden?!

    Wäre toll wenn mir wer unter die Arme greifen könnte!

    LG Lizzz
     
    Lizz96, 17. April 2024
    #1
  2. {Boris} hat Ahnung
    Hi,

    wenn es immer der Temp-Ordner ist, dann nutze Environ$("Temp").
     
    {Boris}, 17. April 2024
    #2
  3. Beverly
    Beverly Erfahrener User
    Hi Lizz,

    wenn alle zu durchsuchenden Verzeichnisse bekannt sind dann z.B. nach diesem Prinzip:

    Code:
    Sub Suchen()
        Dim strPfad As String
        Dim arrPfade()
        Dim intPfad As Integer
        Dim blnDa As Boolean
        arrPfade = Array("C:\Temp\", "D:\Temp\", "E:\Temp\") '<== alle gewünschten Verzeichnisse
        For intPfad = 0 To UBound(arrPfade())
            If Dir(arrPfade(intPfad) & "Test.xlsx") <> "" Then
                Workbooks.Open arrPfade(intPfad) & "Test.xlsx"
                blnDa = True
            End If
        Next intPfad
        If blnDa = False Then MsgBox "Datei Test.xlsx nicht gefunden"
    End Sub
    

    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA GrußformelDatei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA Beverly's Excel - Inn
     
    Beverly, 17. April 2024
    #3
    1 Person gefällt das.
  4. Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA

    Hi, Du kannst mit Dir die Datei suchen:

    Dim Datei as string
    Datei = Dir(”C:\Pfad1\*.xls*”)
    If Datei <> ”" then
    'Datei öffnen
    else
    Datei = Dir("C:\Pfad2\*.xls*")
    .....
    Der * ist ein Platzhalter falls der Dateiname nicht zu Gänze bekannt sein sollte
     
    Crazy Business, 17. April 2024
    #4
  5. Lizz96 User
    @Beverly

    Boaaaah,

    Das ist der Wahnsinn, das funktioniert auf anhieb super.
    Einen kleinen schönheitsfehler (wobei fehler falsch ist) gäbe es noch.. Wenn die Datei nicht gefunden wird, bringt er die msg, aber geht in debug modus mit einem fehler.
    Vermutlich da das ganze versucht weiter zu laufen, gibt es eine Saubere möglichkeit das Workbook zu schließen?

    Wenn ich einfach unter die Msg box oder in den Errorhandler:

    Setze, dann schließt er es auch wenn er die Datei gefunden hat, was natürlich nicht im Sinne des Erfinders ist.

    Wäre super cool,

    Vielen Vielen Dank,
     
    Lizz96, 17. April 2024
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Lizz,

    in welcher Zeile geht Excel in den Debugg-Modus und was sagt der Debugger genau? Wie sieht denn dein jetziger Code aus, denn einen ErrorHandler gibt es in meinem Code nicht. Und welche Mappe soll geschlossen werden?


    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA GrußformelDatei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA Beverly's Excel - Inn
     
    Beverly, 17. April 2024
    #6
  7. Lizz96 User
    @Beverly

    Hey,

    Danke mal wieder.

    Das Macro macht genau was es machen soll, das funktioniert super. Er sollte nur wenn die „blnDa“ msg ausgelöst wird, die datei schließen.
    Diese wird mit „curFile“ angesprochen.

    Nach dem man die msgbox bestätigt hat, geht er weiter im Macro und dann kommt der debug fehler erst. (Subscript out of range).

    Also theoretisch..



    Das funktioniert auch, aber er schließt das File auch wenn die Datei vorhanden ist. Sollte es natürlich erst machen wenn die datei nicht gefunden wurde und dann nach dem die msgbox mit „ok“ bestätigt wurde..


    Vielen Dank,


    Lizz
     
    Lizz96, 17. April 2024
    #7
  8. Beverly
    Beverly Erfahrener User

    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA

    Hi Lizz,

    wenn ich dich richtig verstanden habe, dann so:

    Code:
        If blnDa = False Then
            MsgBox "Datei Test.xlsx nicht gefunden"
            Workbooks(curFile).Close SaveChanges:=False
        End If
    
    Frage: ist Workbooks(curFile) die Mappe mit dem Code? Dann kannst du anstelle Workbooks(curFile) auch ThisWorkbook verwenden. Oder - falls es nicht die Mappe mit dem Code sondern eine andere, aber gerade aktive Mappe ist - stattdessen ActiveWorkbook.


    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA GrußformelDatei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA Beverly's Excel - Inn
     
    Beverly, 17. April 2024
    #8
    1 Person gefällt das.
  9. Lizz96 User
    Funktioniert Super, da war es wohl nur ein fehler in der Anordnung das es nicht geklappt hat.

    VIELEN DANK! DANK!
     
    Lizz96, 17. April 2024
    #9
  10. Beverly
    Beverly Erfahrener User
    Das ist nicht ganz 100%ig korrekt - es lag nicht an der Anordnung selbst sondern daran, dass du deine Codeausführung an keine Bedingung geknüpft hast. Folglich wurde sie in jedem Fall ausgeführt. So wäre es richtig gewesen:

    Code:
        If blnDa = False Then MsgBox "Datei Test.xlsx nicht gefunden"
        If blnDa = False Then Workbooks(curFile).Close SaveChanges:=False
    Und diese beiden Zeilen kann man halt beide in dieselbe If-Anweisung schreiben, da für beide dieselbe Bedingung gilt.



    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA GrußformelDatei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA Beverly's Excel - Inn
     
    Beverly, 17. April 2024
    #10
  11. {Boris} hat Ahnung
    Nur interessehalber: Geht es immer um den Temp-Ordner?
     
    {Boris}, 17. April 2024
    #11
Thema:

Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA

Die Seite wird geladen...
  1. Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA - Similar Threads - Datei mehreren Ordnern

  2. Outlook i365 unter win11 pop3 Konten in IMAP umwandeln

    in Microsoft Outlook Hilfe
    Outlook i365 unter win11 pop3 Konten in IMAP umwandeln: Hallo, ich habe mehrere outlook mail-Konten -schon IMAP mit eigener ost-Datei und eine pst Datei, in der mehrere pop3-mail-Konten zusammengefasst sind. Wie kann ich die zusammengefassten darin...
  3. Aus Access mehrere Excel-Tabellen in neue Datei speichern

    in Microsoft Access Hilfe
    Aus Access mehrere Excel-Tabellen in neue Datei speichern: Hallo, ich habe eine größere Excel-Datei, aus der ich drei Tabellenblätter als neue Excel-Datei abspeichern möchte. Das Ganze soll per VBA aus Access heraus funktionieren. Ich habe es versucht...
  4. Nach einer Datei suchen in mehreren Ordnern?

    in Microsoft Excel Hilfe
    Nach einer Datei suchen in mehreren Ordnern?: Hallo, Vielleicht kann mir hier ja wer helfen, das Macro bezieht sich auf ein Maintenance-File das diverse namen beinhaltet. Mit "aarPaths" will ich in mehreren verzeichnissen schauen ob die...
  5. 1.Excel soll 100 Excel-Tabellen überprüfen

    in Microsoft Excel Hilfe
    1.Excel soll 100 Excel-Tabellen überprüfen: Hallo zusammen, In unserem Unternehmen erhalten wir die Aufträge in Form einer Excel-Tabelle mit etwa 8 Seiten. Jährlich haben wir durchschnittlich 500 Aufträge. Das Hauptproblem besteht darin,...
  6. Zeilen aus mehreren Dateien in neue Datei wenn...

    in Microsoft Excel Hilfe
    Zeilen aus mehreren Dateien in neue Datei wenn...: Hallo erst einmal. Ich habe mich gerade angemeldet weil ich hier sicher kompetente Antworten finden werde. Man verzeihe mir bitte wenn so ähnliche Fragen hier schon aufgetaucht sind, ich fand...
  7. Makro erstellen

    in Microsoft Excel Hilfe
    Makro erstellen: Hi und guten Tag , Vielleicht kann mir jemand weiterhelfen in Sachen Makro. Ich habe ein Makro erstellt dafür dass ich über eine Eingabemaske ( eine Excel Tabelle ) Daten automatisch in eine...
  8. Alle Dateien in einem Ordner öffnen und bearbeiten - Schleife funktioniert nicht mehr

    in Microsoft Excel Hilfe
    Alle Dateien in einem Ordner öffnen und bearbeiten - Schleife funktioniert nicht mehr: Hallo liebe Community, aus einem mir völlig unverständlichen Grund funktioniert mein Makro nicht mehr, obwohl es bis zur besagten Zeile genau das tut, was es tun soll. Letztes Jahr hatte es...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden