MS Word Serienbrief -> PDF
Dieter Raber
- sonstiges
0 Tom
Hallo,
Wie man in Word einen Seriendruck macht, ist mir klar. Wie aber macht man das am geschicktesten, wenn die Ausgabe in eine PDF-Datei erfolgen soll?. Das Problem ist, dass alle PDF's automatisch unter anderen Name gespeichert werden sollen. Der Name an sich ist nebensächlich, die Verwendung einer der Variablen aus der Query, die das Dokument mit Daten versorgt, wäre nicht schlecht.
System:
Windows 2000
Word 2000
Acrobat Pro 6
Vielen Dank
Dieter
Hello,
versuch es mal mit Word VBA-Makros. Aber frag mich bitte nicht, wie das geht. Das habe ich nur bei Access vernünftig verstanden (zum Erklären). Da ich VBA hasse wie die Pest, kann habe ich immer eien Bogen drum gemacht.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hi Tom,
da hatte ich auch schon dran gedacht, aber meine VBA-Kenntnisse sind ebenfalls bescheiden. Im Moment spiele ich gerade mit einem Konverter, der OpenOffice-Dokumente zu Latex konvertiert, um dann mit latex2pdf weiterzukommen.
Mal schauen, was draus wird.
Dieter
Hallo,
da hatte ich auch schon dran gedacht, aber meine VBA-Kenntnisse sind ebenfalls bescheiden. Im Moment spiele ich gerade mit einem Konverter, der OpenOffice-Dokumente zu Latex konvertiert, um dann mit latex2pdf weiterzukommen.
Ist die PDF-Sache das Problem oder die einzelnen Dateien?
Beste Grüße
Viennamade
Hallo Viennamade,
die einzelnen Dateien sind das Problem.
Am liebsten waere es mir folgendermaßen:
Mein Seriendokument enthält immer eine Variable <<nummer>>, die eine aus einer Datenbank erhält. Wenn ich Acrobat als Drucker nehme, haette ich gerne, das er ohne weiteres Zutun die fertigen Dokumente als <<nummer>>.pdf speichert.
Ich hab den Artikel, den du gepostet hast, kurz überflogen, der geht schon in die richtige Richtung.
Dieter
Hallo Dieter!
die einzelnen Dateien sind das Problem.
Am liebsten waere es mir folgendermaßen:
Mein Seriendokument enthält immer eine Variable <<nummer>>, die eine aus einer Datenbank erhält. Wenn ich Acrobat als Drucker nehme, haette ich gerne, das er ohne weiteres Zutun die fertigen Dokumente als <<nummer>>.pdf speichert.
Das müßte _ungefähr_ so gehen:
Dim x As Word.Sections
Dim y As Word.Section
Sub rabe()
Set x = ThisDocument.Sections
For Each y In x
MsgBox y.Index
Next
End Sub
Statt dem MsgBox-Befehl die PrintOut-Methode verwenden, der kann man einen Abschnitt (Section) übergeben, und man kann ihr auch sagen, wohin sie drucken soll: http://msdn.microsoft.com/library/en-us/off2000/html/womthPrintOutApplicationObj.asp
Beste Grüße
Viennamade
Hallo Viennamade,
Ich glaube, damit werde ich zurechtkommen.
Mittlerweile hab ich eine alternative Methode entdeckt und die geht so:
Word-Dokument mit Open-Office öffnen, mit writer2latex nach Tex konvertieren, die Tex-Datei als Template nehmen, die Daten mit einem PHP-Script einlesen, das seinerseits mithilfe der Template und latex2pdf die fertigen Dateien generiert.
Klingt zwar kompliziert, ist es aber nicht.
Mal sehen, wer morgen das Rennen gewinnt, Word/VBA oder OpenOffice/PHP...
Vielleicht magst Du ja morgen mal wieder in den Thread reinschauen, falls irgendwas nicht sollte, einstweilen vielen Dank für Deine Anregungen.
Dieter
Hallo!
Der Acrobat kommt üblicherweise mit dem PDF-Writer. Dieser "funktioniert" wie ein normaler Drucker, bloß daß eben PDFs geschrieben werden.
Wenn du also einen Seriendruck auf einen Drucker machst und da dann den PDF-Writer auswählst, könnte es klappen. Allerdings weiß ich nicht, ob sich der Dateiname variieren läßt.
Gruß
Matthias
Hallo!
... Allerdings weiß ich nicht, ob sich der Dateiname variieren läßt.
Das Wesentliche dabei ist, daß Word die einzelnen Briefe mit Abschnittsbegrenzungen in die "Gesamtdatei" reinschreibt. Also ist ein VBA-Script nötig, welches die einzelnen Abschnitte in Dateien schreibt.
Eine Möglichkeit wird hier http://homepage.swissonline.ch/cindymeister/mergfaq2.htm beschrieben.
Beste Grüße
Viennamade