Wenn_Oder Abfrage in VBA
#1
Hallo,

könnt ihr mir weiterhelfen, ich würde gerne im nachfolgenden Code eine "Wenn - Oder" Abfrage von mehreren Ordnerpfaden (strPath) ausführen, sodass eine angegebene Datei in einem dieser Ordner automatisch geöffnet wird. Derzeit ist nur ein Pfad möglich:

Sub plan()

    Call Datei_beenden
    mycell = ActiveCell.Value
    ean = ".pdf"
    strPath = "C:\Test"
    Alle_D = strPath & MyAddress
    
    pdf = Shell("C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe " & strPath & mycell & ean & """", 3)

End Sub
Top
#2
Hallo,

das geht nur mit if.. Then.. und Abfragen, ob die Datei vorhanden ist.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#3
Hallo, wie würde diese if....then Abfrage z.B. bei zwei vorhandenen Ordnerpfaden in dem angeführten Beispielcode (siehe oben) aussehen?
Top
#4
Hallöchen,

in Deinem code ist die Variable MyAddress nicht belegt. Ist aber nicht schlimm, denn Alle_D benutzt Du auch nicht. Entsprechend kann die ganze Zeile weg. Der code würde auch nur funktionieren, wenn in der Zelle vor dem Namen ein Backslash steht. Bei der Pfadangabe steht ja keiner am Ende.


Im Prinzip so:

If Dir("C:\Test\meine.pdf") <> "" then strDatei = "C:\Test\meine.pdf"
If Dir("C:\Tost\meine.pdf") <> "" then strDatei = "C:\Tost\meine.pdf"
If Dir("C:\Tust\meine.pdf") <> "" then strDatei = "C:\Tust\meine.pdf"

strDatei nimmst Du dann zum Öffnen.

Wenn es die Datei in mehreren Ordnern gibt, dann wird die Datei vom letzten Treffer geöffnet.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#5
Hallo,

leider funktioniert die Abfrage nur immer für einen angegebenen Ordner bei dem Code

If Dir("C:\Test\") <> "" then strDatei = "C:\Test\" 
If Dir("C:\Tost\") <> "" then strDatei = "C:\Tost\"

Wie kann angegeben werden, dass die Datei entweder im einen Ordner liegt und geöffnet werden sollte oder im anderen Ordner?
Top
#6
Hallo,

wie sieht Dein jetziger Versuch, also der komplette Code, aus?

Gruß Uwe
Top
#7
Hallo,




Code:
dass die Datei entweder im einen Ordner liegt und geöffnet werden sollte oder im anderen Ordner


indem Du alle Ordner nacheinander abfragst
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#8
Hallo,

mein jetziger Versuch sieht folgendermaßen aus, leider funktioniert das Öffnen nur jeweils bei der Datei in einem Ordner:

Sub plan()

    mycell = ActiveCell.Value
    ean = ".pdf"

    If Dir("C:\Test\") <> "" Then strDatei = "C:\Test\"
    If Dir("C:\Temp\") <> "" Then strDatei = "C:\Temp\"

    pdf = Shell("C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe " & strDatei & mycell & ean & """", 3)

End Sub
Top
#9
Hallo,

wie wäre es, wenn Du den Befehlen auch die Dateinamen mitgeben würdest? Offensichtlich weißt Du nicht, was die Befehle bewirken. Lies Die mal die Hilfe dazu durch!!!

wie hier: Dir("C:\Test\meine.pdf")
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#10
Hallo,

das Problem ist, dass ich in diesen Verzeichnissen mehrere PDF Dateien habe und diese durch Doppelklick auf die Dateinamen (die ich in eine Excel Tabelle eingetragen habe) geöffnet werden sollen.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste