Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1456to1460
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Beliebige Datei öffnen

Beliebige Datei öffnen
17.11.2015 13:01:59
muehli
Guten Tag zusammen,
ich versuche gerade per VBA eine x-beliebige zu öffnen.
Ich bin das Ganze so angegangen:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As  _
Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long

Private Sub btn_ETOproject_Click()
Pfad = Range("S10").Value
rc = ShellExecute(0, "open", Pfad, "", "", SW_HIDE)
End Sub
In Range S10 steht:
C:\Tools\ETO Project.xlsm
irgendwie funktioniert es aber nicht.
Kann mir jemand helfen?
Freundliche Grüße
muehli

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beliebige Datei öffnen
17.11.2015 13:23:22
Herbert
Hallo,
hast Du es schon mal mit dem Datei-Dialog versucht:
   Dim vFile As Variant
'* Dialog zum öffnen einer Datei
vFile = Application.GetOpenFilename
If vFile = False Then Exit Sub
Workbooks.Open vFile
Ansonsten solltest Du anstatt Deines "Private Declare Function..." den folgenden Code nehmen:
#If VBA7 Or Win64 Then
Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hWnd As _
Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As  _
String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
#Else
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd  _
As _
Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As  _
String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
#End If
#If VBA7 Or Win64 Then
Private Declare PtrSafe Function GetDesktopWindow Lib "user32" () As Long
#Else
Private Declare Function GetDesktopWindow Lib "user32" () As Long
#End If
Servus

Anzeige
AW: Beliebige Datei öffnen
17.11.2015 14:11:12
muehli
Hallo Herbert,
vielen Dank für die schnelle Antwort!
mit Workbooks.Open vFile kann man nur EXCEL-Files öffnen, wenn ich das richtig verstanden habe.
Reicht für meine Anwengung auch zu 80%.
Ich nehme an, dass dann die zweite Variante ein beliebiges Dateiformat öffnet, oder?
Freundliche Grüße und danke
Muehli

AW: Beliebige Datei öffnen
17.11.2015 21:27:17
Uduuh
Hallo,
versuchs mal mit
Sub yyy ()
dim myshell as object
set myshell = createobject("wscript.shell")
myshell.run chr(34) & Range("S10").Value & chr(43)
End Sub
Gruß aus’m Pott
Udo

Anzeige
AW: Beliebige Datei öffnen
18.11.2015 07:53:47
muehli
Hi Udo,
danke für die Antwort.
Habe es gerade mit deinem Code versucht. Aber die Methode ist "fehlgeschlagen".
Freundliche Grüße
Muehli

AW: Beliebige Datei öffnen
21.11.2015 17:54:36
Michael
Hi zusammen,
noch ein Versuch: Shell öffnet PROGRAMME, aber man kann auch DATEIN starten, wobei Windows das jeweils passende Programm dafür mit öffnet, also bei .DOCX eben word usw.
Dazu muß man dem Shell das "cmd" voranstellen, das ist der "Kommandoprozessor".
Das Makro:
Option Explicit
Sub aufrufen()
Dim i&
Dim ergebnis
Dim aufruf As String
For i = 2 To 5
aufruf = "cmd /c " & Range("B" & i).Value
ergebnis = Shell(aufruf, vbNormalFocus)
MsgBox "Das war Nr. " & i & " Ergebnis: " & ergebnis
Next
End Sub

Ich habe mal getestet mit:
B2: C:\Windows\System32\calc.exe          das öffnet den Taschenrechner
B3: C:\A_Herber\BlaBla.txt                das öffnet den Editor mit der Textdatei
B4: C:\A_Herber\Formel_Werte.GIF          das öffnet (leider) den IE mit dem Bild
B5: C:\A_Herber\PDF-Test.pdf              das öffnet den Acrobat Reader samt PDF

Vielleicht hilft das ja weiter.
Schöne Grüße,
Michael
P.S.: ein Umweg über Batch-Datei wurde hier beschrieben:
https://www.herber.de/forum/archiv/720to724/721183_cmd_befehle_mit_vba_ausfuehren.html
Anzeige

36 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige