Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Word mit bestimmter Vorlage aus Excel 97 heraus öffnen





Frage

Noch ein Problem: Ich möchte Word mit einer bestimmten Vorlage per Makro aus Excel öffnen. Alle Beispiele die ich dazu gefunden habe, haben zwar Word mit der Vorlage geöffnet, aber die Vorlage als solche und nicht wie üblich bei Word mit einer neuen Datei. Also Vorlage xx.dot wird als xx.dot geöffnet und nicht als neue Datei. Das Problem ist, wenn ich Speichern wähle, wird bei den gefundenen Beispielen die DOT Datei überschrieben und mir nicht die Auswahl für eine neu zu speichernde Datei angezeigt. Auch hier Dank im Vorraus für die Helfer.

Antwort 1 von cmkatz

Hi,

kopiere folgenden Code im VB-Editor in Excel in ein neues Modul und weise dieses Makro einem Button zu:


Option Explicit
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Dim wdRG As Word.Range
Sub WordStarten()
Dim strDat As String
    Set wdApp = New Word.Application
'genauen Pfad und Dateiname angeben:
    Set wdDoc = wdApp.Documents.Add("Laufwerk:\genauer Pfad\dateiname.dot")
    wdApp.Visible = True
    Set wdDoc = Nothing
    Set wdApp = Nothing
End Sub


Nur noch "Laufwerk:\genauer Pfad\dateiname.dot" entsprechend ändern, dann sollte es funktionieren.

Hat's geholfen?

Gruß
cmkatz

Antwort 2 von cmkatz

Nachtrag:

wirst du sicherlich bereits gemacht haben, aber kuck im VB-Editor unter Extras-Verweise, ob "Microsoft Word Library" angehakt ist.

Gruß
cmkatz

Antwort 3 von str

und es klappte so wie ich es wollte.

Danke schön.

str

Antwort 4 von shrike

Naja, es geht aber auch auf die einfache Tour...


Sub Word_Vorlage()
Dim ret
ret = Shell("winword.exe /tX:\Vorlagen\Blabla.dot", vbNormalFocus)
End Sub

Entscheidend ist der Schalter /t

(evtl. noch den Pfad für die winword.exe angeben, aber normalerweise wird es auch so gefunden)

mfg, shrike

Antwort 5 von nighty

hi shrike :)

ich sehe keinen aufruf ?

oder erfolgt der aufruf schon bei der
definition ,ret=xxx ?

ret hat somit 4 byte richtig ?

koennte man auch ret% nehmen,hat ja glaub ich nur ein byte ?

gruss nighty

Antwort 6 von nighty

hi shrike :)

habs ausprobiert :)

aufruf erfolgt wohl schon bei der definition :)

ret% ging auch,doch weiss ich nicht ob nun was verloren gegangen ist ?

gruss nighty

Antwort 7 von shrike

Hi nighty,

Shell(...) ist der Aufruf (eigentlich eine Funktion) und gibt einen Double-Wert zurück. Man könnte den Rückgabewert auch ignorieren und die Funktion so aufrufen:

Shell "winword.exe /tX:\Vorlagen\Blabla.dot"

Das hat aber den Nachteil, daß man keine weiteren Parameter angeben kann (z.B. vbNormalFocus um das Prog zu aktivieren -> Vordergrund). Außerdem kann der Rückgabewert zur Auswertung äußerst nützlich sein. Bei Fehler (Prog nich gefunden oder so) isser 0, ansonsten die Task-ID des Programms (siehe auch Taskmanager). Und die Task-ID kann man ja oftmals gut gebrauchen.

mfg, shrike

Antwort 8 von nighty

hi shrike :)

DANKESCHOEN :)

gruss nighty

Antwort 9 von cmkatz

Hi,

wenn ich den von shrike genannten Code einsetze und als Makro ausführe, öffnet sich zwar Word, aber ich erhalte dann folgende Fehlermeldung von Word:


Dokumentenname oder Pfad ungültig. Versuchen Sie eine oder mehrere dieser Optionen:
*Überprüfen sie die Dateizugriffsrechte für das Dokument oder Laufwerk.
* Suchen Sie im Dialogfeld "Datei öffnen" nach dem Dokument.



Gruß
cmkatz

Antwort 10 von shrike

Erster Gedanke jedes Windows-Benutzers muß bei so einer Meldung sein (natürlich nach Prüfung, ob die Datei wirklich existiert ;-)

Leerzeichen im Pfad/Dateinamen?(!)

Dann muß der übergebene Name in Anführungszeichen stehen. In Excel etwas tricky, aber einfach:
...
ret = Shell("winword.exe /t""X:\Neue Vorlagen\Bla Bla Bla mit Leerzeichen.dot""", vbNormalFocus)
...

Man achte auf die genaue Anzahl der Anf.-Zeichen.

shrike

Antwort 11 von cmkatz

Prima, jetzt geht's, an den Leerzeichen bzw. fehlenden Anführungszeichen hat's gelegen!

Gruß
cmkatz

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: