Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1228to1232
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 Seriendruck aus Excel

Word Seriendruck aus Excel
Christoph
Guten Tag,
habe Probleme mit folgendem Makro. Es geht um einen Seriendruck aus einer Excel Tabelle aus. Die gewünschte Zeile wird ausgewählt, über einen Command Button wird dann das Makro gestartet und die Zeilennummer wird übergeben an das Word Makro. Darüber wird das Dokument mit dem richtigem Datensatz gedruckt und die Word Vorlage wird wieder geschlossen.
Nun das Problem: es bleibt immer eine Instanz von Excel im Taskmanager vorhanden. Auch wenn Excel komplett im Nachhinein geschlossen wurde. Im Projektexplorer vom VBA Editor sieht man dann noch das jeweilige Dokument. Dies kann auch mehrfach vorhanden sein, je nachdem wie oft man gedruckt hat.
Hat jemand eine Idee wodurch das verursacht wird und wie man dem entgegen gehen kann?
Durch "Set AppWord = Nothing" wird das Objekt ja nicht mehr referenziert. Da ja eine Excel Instanz geöffnet bleibt vermute ich dass es mit dem öffnen des Excel Dokuments aus der Seriendruck Word Datei zu tun hat.
Auf der Suche nach einer Lösung habe ich schon mymerge.DataSource.Close versucht, dies bringt aber keinerlei Änderung.
vielen vielen Dank für eure Hilfe
Makro in Excel:

Public Sub etikett_druck
Dim datensatz_nr As Integer
datensatz_nr = ActiveCell.Row
datensatz_nr = datensatz_nr - 1
Dim AppWord As Object
Dim sFile As String
On Error Resume Next
'Ettiketten öffnen
sFile = ThisWorkbook.Path & "\Vorlage - Dymo Etikett.doc"
Set AppWord = CreateObject("Word.Application")
AppWord.Documents.Open sFile
'Übergabe des Datensatzes
AppWord.Run "druck", datensatz_nr
AppWord.Quit
Set AppWord = Nothing
End Sub
Makro in Word:

Public Sub druck(datensatz_nr As Integer)
ActivePrinter = "DYMO LabelWriter 400"
Set mymerge = ActiveDocument.MailMerge
mymerge.OpenDataSource Name:=ActiveDocument.Path & "\Laborjournal.xls", _
ConfirmConversions:=True, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=  _
ActiveDocument.Path & \Laborjournal;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=35" _
, SQLStatement:="SELECT * FROM `Laborjournal$`", SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess
mymerge.DataSource.FirstRecord = datensatz_nr
mymerge.DataSource.LastRecord = datensatz_nr
mymerge.Destination = wdSendToPrinter
mymerge.Execute
ActiveDocument.Save
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Word Seriendruck aus Excel
30.08.2011 11:54:30
Luschi
Hallo Christoph,
an dem Phänomen habe ich mir auch schon mal die Zähne ausgebissen.
zZ verwenbde ich Win7 sowie Excel & Winword 2010.
Wenn ich das Serienbriefdokument alleine öffne, ist im Taskmanager kein 'Excel-Objekt'
zu finden, versuche ich aber die Exceldatei mit den Adressen zu öffnen, kommt die Meldung,
daß die Exceldatei bereits göffnet ist und man sie nur noch schreibgeschützt geöffnet werden kann.
Selbst wenn man dann Winword schließt, kommt ab und zu diese doofe Meldung.
Deshalb mache ich es anders. Ich habe eine dot/dotx-Word-Vorlagei erstellt (also ohne Makros), dafür aber mit den entsprechenden Textmarken an den richtigen Stellen.
Nun steuere ich alles von einem Excel-Makro aus:
- Word öffnen
- Word-Vorlage als neues doc/dcox Dokument öffnen
- Textmarken füllen mit den richtigen Werten aus der selektierten Excel-Zeile
- Worddokument speichern und drucken
- sind mehrere Excel-Zeilen markiert, geschieht das Alles in einer For-Schleife
Vielleicht hift Dir aber auch dieser Artikel:
http://www.aboutvb.de/khw/artikel/khwshell.htm
Dein Problem ist ja, daß das Excel-Makro nicht wartet, bis das Word-Makro fertig ist.
Um das zu gewährleisten, sind eben einige Liegestütze mit API zu unternehmen.
Viel Spaß wünscht Luschi
aus klein-Paris
Anzeige
AW: Word Seriendruck aus Excel
01.09.2011 09:47:24
Christoph
Hallo Luschi,
danke schon einmal für deine Antwort. Den Link schaue ich mir mal an, das mit der ansynchronen Ausführung hört sich ja genau nach dem an wo ich auch die Probleme habe.
Könntest du mir vielleicht dein Makro das nur mit Excel arbeitet zur Verfügung stellen?
Vielleicht lohnt es sich das bei mir auch darauf umzustellen bzw. auf meine Bedürfnisse anzupassen.
Vor allem das Verarbeiten von mehreren Zeilen mit der Schleife wäre für mich Interessant.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige