numberseven

Probleme mit vbscript

Hallo Experten,

ich möchte per vbscript eine xlt Datei starten beide liegen immer im gleichen Verzeichnis, dieses ist allerdings vorher nicht bestimmt.
In einer ini Datei welche sich immer im gleichen Verzeichnis befindet wird das später gewählte Verzeichnis abgelegt.
Der Grund für diese Umständlichkeit ist der folgende.

Die xlt.Datei startet mit Makros und unterbindet ein selbstständiges speichern.
Da diese Datei weiterverteilt wird und ich nicht weiß ob sämtliche User die Makrosicherheit angepasst haben suchte ich nach einer Lösung und fand sie in diesem vbscript.


Const strFilename="Tagesbericht_Vorlage.xlt"
Dim xlApp, xlWB

Set xlApp=CreateObject("Excel.Application")
xlApp.visible=true

Set xlWB=xlApp.Workbooks.open(strFilename)

Nun die Merkwürdigkeit.

Auf meinem Rechner läuft das Script ohne Probleme.
Wenn es aber auf einem anderen Rechner gestartet wird bekomme ich die Fehlermeldung Datei "Tagesbericht_Vorlage.xlt" nicht gefunden.
Setze ich unter Const strFilename den kompletten Pfad ein funktioniert die Sache, aber das ist ja nicht Sinn meiner Sache.

Woran kann das liegen oder hat jemand ne Idee wie ich den Pfad aus meiner ini Datei ins Script bekomme?

Hier noch die ini Datei

pfad.ini

[Pfad]
Directory = "hier steht dann das vom user gewählte verzeichnis"


Danke
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 119942

Url: https://administrator.de/forum/probleme-mit-vbscript-119942.html

Ausgedruckt am: 14.06.2025 um 13:06 Uhr

76109
76109 07.07.2009 um 22:50:36 Uhr
Goto Top
Hallo numberseven!

Das habe ich heute doch schon mal gelesenface-smile

Habe ich das richtig verstanden, dass sich das VB-Script immer im gleichen Verzeichnis, wie die *.xlt befindet? Wenn ja, dann brauchst Du dafür keine *.ini auslesen, sondern nur mit folgendem Code den Pfad des Scripts ermitteln.

Speichere und starte den Code als Test.vbs und die MsgBox gibt dir den kompletten Pfad aus:
   Const strFilename="\Tagesbericht_Vorlage.xlt"    'Backslash beachten  

   Dim Fso, xltFile

   Set Fso = CreateObject("Scripting.FileSystemObject")  
   xltFile = Fso.GetParentFolderName(WScript.ScriptFullName) & strFilename

   MsgBox xltFile   

Gruß Dieter
numberseven
numberseven 07.07.2009 um 23:40:09 Uhr
Goto Top
Hallo Dieter,

habe deinen Code mit in meinen intgriert und bis jetzt lief es nach der Installation.
Danke Dir auf jeden Fall für den Hinweis.
Probiere es Morgen auf anderen Rechnern aus und gebe ein Feedback.


Gruß

numberseven
numberseven
numberseven 08.07.2009 um 21:40:20 Uhr
Goto Top
Hat alles wunderbar geplappt. Lief ohne Probleme auf allen Rechnern.

Dank an alle.
76109
76109 08.07.2009 um 23:23:59 Uhr
Goto Top
Hallo numberseven!

Hätte mich auch gewundert, wenn es auf anderen Rechnern nicht funktioniert hätteface-smile

Gruß Dieter