Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1300to1304
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

Word per VBA öffnen, mal gehts mal nicht

Word per VBA öffnen, mal gehts mal nicht
05.03.2013 10:41:07
bene
Guten Morgen,
also ich habe ein VBA Script geschrieben, welches aus Excel heraus ein Worddokument öffnet, die Textmarken mit dem Inhalt von Zellen vollschreibt und dann ausdruckt.
Bei mir klappt es wunderbar, auch bei einem Kollegen der noch Windows XP und Office2003 benutzt geht es ohne Probleme. Allerding bei der Person die darauf angewiesen ist scheitert es.
Wenn man an dem Rechner auf den Button für drucken klickt passiert nichts, man kann aber auch Excel nicht beenden da immer der Ladekreis für die Maus erscheint. Nach einiger Zeit kommt dann die Meldung: Microsoft Excel wartet auf die Beendigung einer OLE-Aktion in einer anderen Anwendung
Ich habe dann einen Test gemacht, ich habe auf drucken geklickt und dann das Worddokument manuell geöffnet. Man kann es dann allerding nur schreibgeschützt öffnen, wenn man dies getan hat sieht man auch wie die Wordtextmarken durch die Zellen ersetzt werden. Danach schließt sich das Dokument und es wird gedruck, aber anstatt den Inhalt der Zellen an Stelle der Textmarken auszudrucken werden einfach nur die Textmarken gedruckt.
Hier ist einmal der Code zum öffnen und drucken:
With objWDApp
.Visible = False
Set objDoc = .Documents.Open(strFileName)
Hier dann die Übergabe an die Textmarken, danach die Druckanweisung
objWDApp.PrintOut Filename:=strFileName
objWDApp.ActiveDocument.Close savechanges:=False
objWDApp.Quit
Set objWDApp = Nothing
Ich hoffe Ihr könnt mir helfen
Gruß Bene

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

Betreff
Datum
Anwender
Anzeige
AW: Word per VBA öffnen, mal gehts mal nicht
05.03.2013 11:08:38
Luschi
Hallo Bene,
hast Du denn mal den Vba-Code im Einzelschrittmodus durchgesteppt und wie füllst Du die Word-Textmarken.
Ein bischen mehr Code zum Anschauen wäre nicht schlecht. Meine TM's fülle ich so, wobei
fa_bem ... Variablen vom Typ String sind:

With objDoc
.Bookmarks("Firma_Bem").Range.Text = fa_bem
.Bookmarks("Firma_Bez").Range.Text = fa_bez
.Bookmarks("Firma_Ort").Range.Text = fa_ort
.Bookmarks("Firma_Plz").Range.Text = fa_plz
'usw.
End With
Zum Durchsteppen im Einzelschrittmodus schreibe vor 'With objDoc'
noch den Befehl 'Stop', dann kann man mit der F8-Taste jeden Befehl schrittweise nachverfolgen
und sehen, wo es kneift.
Gruß von Luschi
aus klein-Paris

Anzeige
AW: Word per VBA öffnen, mal gehts mal nicht
05.03.2013 11:20:16
bene
Danke für die schnelle Antwort.
Meine Textmarken fülle ich so:
.ActiveDocument.Bookmarks("lMathe").Range = strlMathe
Das mit dem Stop Befehl teste ich jetzt mal aus.

AW: Word per VBA öffnen, mal gehts mal nicht
05.03.2013 12:14:31
fcs
Hallo Bene,
du weist beim Öffnen des Worddokuments dieses doch einer Objektvariablen zu.
Dann kannst du diese Variable auch zum Drucken und Schliessen des Dokuments verwenden.
Du darfst aber die Worddatei nicht vor dem Drucken schliessen.
Da die Ursprungsdatei schreibgeschützt ist, und du versuchst diese gespeicherte Datei zu Drucken kommt als Ergebnis natürlich auch die "leere" Datei heraus.
Irgendwo in diesem Teufelskreis verfängt sich wahrscheinlich bei dem Kollegen das Makro, wenn beim Schliessen der Wordanwendung eine noch nicht gespeicherte Datei geschlossen werden soll und der Dialog zum Speichern unter nicht beantwortet wird.
Gruß
Franz
  objDoc.PrintOut
objDoc.Close savechanges:=False
objWDApp.Quit
Set objWDApp = Nothing: Set objDoc = Nothing

Anzeige
AW: Word per VBA öffnen, mal gehts mal nicht
05.03.2013 14:04:27
bene
Danke Franz! Hat geklappt!

AW: Word per VBA öffnen, mal gehts mal nicht
05.03.2013 11:51:46
bene
So ich bin jetzt mit Stop durch den Code gegangen.
er durchläuft alles bis auf: objWDApp.PrintOut Filename:=strFileName wunderbar. Genau bei diesem Befehl läuft er nicht mehr weiter.
Beim zweiten Versuch habe ich dann, als er wieder gestoppt hat, das Worddokument manuell geöffnet. Plötzlich ging es weiter und der hat gedruckt... allderings wieder nur die Textmarken in der Rohform.
Gruß
bene

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige