PDA

Vollständige Version anzeigen : {INCLUDETEXT}-Feld in statischen Text umwandeln


fsagurna
09.07.2009, 13:10
Hallo,

ich habe einen Serienbrief, der über {INCLUDETEXT} verschiedene Textbausteine einfügt, je nach Datensätzen in der Serienquelle.
Nun möchte ich, dass in dem fertigen Serienbrief diese {INCLUDETEXT} Schnipsel zu statischem Text werden, damit sich Änderungen an den Bausteinen die später erfolgen nicht auf die fertigen Dokumente hat.

Ist das irgendwie möglich?
So was wie ne Funktion "onLetterMergeChangeFieldsToStaticText" vielleicht?

**Edit**
Hab schonmal ein bisschen rausgefunden:
Strg+A Strg+Shift+F9 macht aus Feldern statischen Text.
Als aufegezeichnetes Makro sieht es dann so aus:


Sub Makro1()
Selection.WholeStory
Selection.Fields.Unlink
End Sub


Was jetzt noch fehlt wäre also, dass ich in das Dokument so was einbinden kann, dass der Code automatisch ausgeführt wird sobald das Seriendokument zusammengeführt wurde.

PapaSchlumpf
09.07.2009, 14:02
Hi

ich dachte immer nach Ausführen der Serienbrieffunktion wäre das ein statischer Text?!

PS

fsagurna
09.07.2009, 14:30
Das stimmt für die normalen Seriendruckfelder, aber für die {INCLUDETEXT} leider nicht.

Ich bin noch einen Schritt weiter ... dachte ich, aber leider gehts noch nicht ganz.
Ich müsste wissen wie ich ein Makro aufrufe, sobald der Serienbrief erstellt wurde. Das Folgende Makro wird zwar im Hauptdokument ausgeführt, aber nicht im daraus erstellten Brief:


Private Sub Document_Open()
If ActiveDocument.MailMerge.State = 0 Then
Selection.WholeStory
Selection.Fields.Unlink
Selection.Collapse
End If
End Sub


Habs auch in Document_New() probiert. Geht aber leider auch nicht.

**Edit**
Ich hab noch was rausgefunden:

{INCLUDETEXT diesedate} ----> geht nicht, also Feld bleibt Feld
{IF 1=1 {INCLUDETEXT diesedatei} ""} ----> geht, Text wird umgewandelt in statischen Text.

Ist zwar nicht schön, aber funktioniert.