vonlaun
Goto Top

Seriendruckdatei unter Word 2007 aufteilen und unter einzelnen Briefdateien abspeichern

Word 2007 Serienbriefdatei soll in einzelne Briefdateien (je Empfänger eine) aufgeteilt werden und einzeln abgespeichert werden.
Makro/ Add-Inn/ Add-On gesucht

Serienbrief Word 2007

Datenquelle: Exceltabelle (Excel 2007) mit circa 50 Datensätzen in zeilenweiser Anordnung. In jeder Zeile sind 30 spaltenweise angeordnete Zellen, die die individuellen Daten für den Serienbrief enthalten (z.B. Vorname, Nachname, Textfeld, Datumsangabe in „10.11.2007“ , Datumsangabe 2 in „November 2008“, Betrag in „436,22 EUR“, etc.).

Startdokument für Serienbrief: Worddokument (Word 2007 im Kompatibilitätsmodus) mit 65 Seiten. Es sind 30 verschiedene Seriendruckfelder enthalten, davon einige in Kopf- oder Fußzeilen. Diese Seriendruckfelder werden aus der Exceltabelle „befüllt“ und zwar so, dass die Formatierung aus der Exceltabelle erhalten bleibt. Einige Excelzellen enthalten Formeln „=B6+12“.

Gesucht wird Makro/ Add on für: Start des Seriendrucks, wobei die fertigen einzelnen (individualisierten) Briefe (Worddokumente) an die Empfänger aus der Exceltabelle nicht ausgedruckt werden sollen, sondern als Dokumente (doc) in einem Zielverzeichnis abgespeichert werden sollen und zwar mit dem Dateinamen „Vorname_Nachname_Erstelldatum.doc“. Dabei soll der Dateiname aus der EXCEL-Liste herausgelesen werden, in der auch alle anderen Werte stehen. Alle Seriendruckfelder sollten in diesen Dokumenten keinen Hinweis auf Seriendruckfelder enthalten sondern in Text umgewandelt sein. Und zwar nur die Seriendruckfelder, nicht andere Felder wie z.B. Verlinkungen etc. Start dieses Makros möglichst einfach.

Benötige dringend eine Lösung!
Herzlichen Dank.
vonLAUN

Content-Key: 104048

Url: https://administrator.de/contentid/104048

Printed on: May 3, 2024 at 23:05 o'clock

Member: MathiasB
MathiasB Feb 16, 2009 at 10:02:09 (UTC)
Goto Top
Hallo Laun,

vielleicht hilft das VB-Makro ja schon mal für den Anfang:

Der gewünscht Dateiname wir aus den Excel-Feldern im Seriendruckdokument zusammengesetzt und dieser Bereich dann mit der Textmarke "name" versehen. Das Makro verknüpft den Brief, sucht dann "name", speichert eine TXT-Datei mit diesem Namen im angegebenen Pfad ab und geht zum nächsten Datensatz über. Es ist dann zwar nicht das DOC-Format, aber vielleicht bringt dich das Makro auf Ideen... ich brauchte es nur für TXT-Dateien, daher reichte es mir. Viel Spaß beim Tüfteln...

Sub save()
Do
Selection.GoTo What:=wdGoToBookmark, Name:="name"
Selection.Find.ClearFormatting
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Copy
Bastelname = Selection.Text
ChangeFileOpenDirectory "D:\Texte\"
ActiveDocument.SaveAs FileName:=Bastelname, FileFormat:= _
wdFormatText, _
LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
False, Encoding:=1252, InsertLineBreaks:=False, AllowSubstitutions:=False _
, LineEnding:=wdCRLF
ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
Loop
End Sub