ich möchte wenn ich auf einen button drücke eine html datei öffnen, die in einem unterordner von von der excel datei ist. wichtig ist, dass ich den pfad nicht absolut (also C:\blabla…\test.htm) angeben will sondern auf den ort bezogen wo meine excel datei liegt.
habe dazu schon etwas im internet gesucht aber leider funktioniert das bei mir nicht.
Es kommt immer diese Fehlermeldung:
Run-time-error ‚-2147024894 (800700002)‘
Method ‚Run‘ of object ‚IWshShell3‘ failed
mein bisheriger code:
Dim wshshell As Object
Dim destination As String
Set wshshell = CreateObject(„WScript.Shell“)
destination = ThisWorkbook.Path & „\html\test.htm“
wshshell.Run destination
ich hatte auch schon gelesen, dass es an leerzeichen im pfad liegen kann… aber ich hab da ja keine drin…
Sub tt()
MsgBox Dir(ThisWorkbook.Path & „\html\test.htm“)
End Sub
Und, passiert das Gleiche bei dir wenn du nicht "destination als Variablennamen nimmst sondern einen unverdächtigeren wie „Mydestination“ oder „Datei“ oder oder…
Gruß
Reinhard
ich hatte auch schon gelesen, dass es an leerzeichen im pfad
liegen kann… aber ich hab da ja keine drin…
Sub tt()
MsgBox Dir(ThisWorkbook.Path & „\html\test.htm“)
End Sub
da kommt dann eine msgbox mit dem inhalt test.htm
Und, passiert das Gleiche bei dir wenn du nicht "destination
als Variablennamen nimmst sondern einen unverdächtigeren wie
„Mydestination“ oder „Datei“ oder oder…
wenn ich nicht destination verwende sondern irgendetwas anderes kommt trotzdem die alte fehlermeldung wieder…
öffnen, die in einem unterordner von von der excel datei ist.
wichtig ist, dass ich den pfad nicht absolut (also
C:\blabla…\test.htm) angeben will sondern auf den ort
bezogen wo meine excel datei liegt.
Dim wshshell As Object
Dim destination As String
Set wshshell = CreateObject(„WScript.Shell“)
destination = ThisWorkbook.Path & „\html\test.htm“
wshshell.Run destination
Hi Shram,
ich habe keine Unterlagen zu Shellscripts, denke mir aber „Run“ klappt nur bei ausführbaren Dateien wie exe,com,bat…
Mit welchem programm soll denn die htm-Datei geöffnet werden? IE, Firefox, Excel?
Mit Excel:
Sub tt()
Workbooks.Open ThisWorkbook.Path & „\html\test.htm“
End Sub
ich habe keine Unterlagen zu Shellscripts, denke mir aber
„Run“ klappt nur bei ausführbaren Dateien wie exe,com,bat…
das kann natürlich sein… hmmm…
Mit welchem programm soll denn die htm-Datei geöffnet werden?
IE, Firefox, Excel?
ich möchte die html datei mit opera auf machen bzw. dem standartbrowser der eben installiert ist. da ich das excel dukumet eigentlich nur auf meinem laptop betreiben will könnte man natürlich auch opera starten und die seite aufrufen… nur da weis ich auch net genau wie das dann geht
vielen dank schon mal für deine schnellen antworten!
ich möchte die html datei mit opera auf machen bzw. dem
standartbrowser der eben installiert ist. da ich das excel
dukumet eigentlich nur auf meinem laptop betreiben will könnte
man natürlich auch opera starten und die seite aufrufen… nur
da weis ich auch net genau wie das dann geht
Hi Shram,
probiers mal so(einfache oder doppelte Striche mußte mal austesten):
in deinem alten Code dies einbauen
WSHShell.Run(„C:\Programme\Opera\Opera.exe“ & ThisWorkbook.Path & „\html\test.htm“)
oder so
Sub Htm()
Dim Starte
Starte = Shell(„C:\Programme\Opera\Opera.exe“ & ThisWorkbook.Path & „\html\test.htm“)
End Sub
probiers mal so(einfache oder doppelte Striche mußte mal
austesten):
in deinem alten Code dies einbauen
WSHShell.Run(„C:\Programme\Opera\Opera.exe“ &
ThisWorkbook.Path & „\html\test.htm“)
also dabei kommt die alte fehlermeldung wieder…
oder so
Sub Htm()
Dim Starte
Starte = Shell(„C:\Programme\Opera\Opera.exe“ &
ThisWorkbook.Path & „\html\test.htm“)
End Sub
und hier kommt die meldung:
laufzeitfehler ‚5‘
ungültiger prozeduraufruf oder ungültiges argument
ich habe beides jeweils mit einfachen und doppelten slashs versucht… habe auch den pfad c:stuck_out_tongue:rogramme… usw an meine ordnerstruktur angepasst. daran kann es nicht liegen.
Vielleicht fehlt ein leerzeichen zwischen .exe und der datei, also tausche bitte
„C:\Programme\Opera\Opera.exe“
gegen
"C:\Programme\Opera\Opera.exe "
Normalerweise müßte es gehen daß man Opera gleich beim Starten die URL/Htmldatei mitgeben kann damit es diese beim Starten öffnet.
Da ich kein opera habe kann ich dies nicht testen.
Geh mal bitte auf Start–Ausführen und gib da ein
C:\Programme\Opera\Opera.exe c:\test.htm
Vorher natürlich die htm nach c:\ verschieben.
Wenn das nicht klappt, schau mal in die Operahilfe nach Start Startparameter o.ä.
Äh, den Pfad zu deiener opera.exe und ihre Schreibweise hast du überprüft?
Der Internetexplorer heißt ja auch nicht internetexplorer.exe sondern iexplore.exe…
Gib halt Rückmeldung, wenn alles nix bringt müssen wir halt weiterschauen wie das zu lösen ist.
Und, passiert das Gleiche bei dir wenn du nicht "destination
als Variablennamen nimmst sondern einen unverdächtigeren wie
„Mydestination“ oder „Datei“ oder oder…
wenn ich nicht destination verwende sondern irgendetwas
anderes kommt trotzdem die alte fehlermeldung wieder…
Hi Simon,
meine Rückfrage diente einzig dazu bestimmte Fehlerquellen auszuschließen.
Wenn „Dir“ was anzeigt so stimmt der Pfad und die datei ist vorhanden dort.
Und zu „destination“, ich vermeide grundsätzlich bezeichnungen zu benutzen die Excel-Vba auch benutzt.
Von mir aus kann es 999 von 1000 mal gutgehen daß ich eine Variable dem Namen „Name“ gebe, bietet sich ja an bei Name,Straße,PLZ,Wohnort, würde ich aber nie machen denn Excel Vba kennt auch „Name“ wie bei
Msgbox Activesheet.Name
Ich muß von dem einen Fall von 1000 ausgehen wo es da Probleme geben KÖNNTE.
Einzig deshalb benenne ich dann so: VName oder NName oder Myname oder so.
Ob das übertrieben ist ist mir wurscht, Excel-Vba bietet von sich aus schon genug Stolperfallen da muß ich nicht noch eigene schaffen.