Wie bekomme ich das ( mit shell? ) unter VBA hin, ohne die dazugehörigen Programme Adobe und Corel erst als Pfad vorgeben zu müssen?
Public Declare Function FindExecutable Lib "shell32.dll" Alias _
"FindExecutableA" (ByVal lpFile As String, ByVal lpDirectory As String, ByVal lpResult As String) As Long
Public Function AnwendungFuerDatei(ByVal a_Datei As String) As String
'Datei: Pfad + Dateinamen einer existierenden Datei
Dim Pfad As String
Pfad = Space(256)
Call FindExecutable(a_Datei, vbNullString, Pfad)
If "" <> Pfad Then
Pfad = Trim(Left(Pfad, InStr(Pfad, vbNullChar) - 1))
End If
AnwendungFuerDatei = Pfad
End Function
Sub startDatei()
Dim s1 As String, s2 As String, s3 As String, n As Long
s1 = "D:\Spiele\SkartArt\MaeuseSkat\Skatliste.pdf"
s2 = AnwendungFuerDatei(s1)
If "" <> s2 Then
s3 = s2 & " " & s1
n = Shell(s4, vbMaximizedFocus)
Else
MsgBox "Anwendungprogramm für " & s1 & " nicht gefunden/installiert!"
End If
End Sub
Gruß von LuschiDie erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen