Fragensteller
Unlink reference documents but keep doc properties

Frage
-
Hy @ all,
i have a template document (*.dotm) which references subdocuments. Within this documents I have some doc properties.
This doc properties are still in docment if i open the dotm but gone after i unlinked the refenrence by the following macro:
Private Sub document_New()
' Delink_Open Macro unlinks all reference documents
Dim fld As Field
' First update the references to have always the latest version
ActiveDocument.Fields.Update
' Unlink the refenreces but keep the fields
For Each fld In ActiveDocument.Fields
If fld.Type = wdFieldIncludeText Then
' fld.Unlink
MsgBox (fld.Result.Text)
End If
Next fld
' Update the fields to have e.g. page numbers up to date
ActiveDocument.Fields.Update
End SubHow can i keep the doc properties within the reference documents but unlink them?
Thx,
Stefan
Alle Antworten
-
Hallo Stefan,
mir ist nicht ganz klar, was du erreichen möchtest bzw. was das Problem ist. Im Dokument werden per IncludeText-Feld andere Dokumente eingebunden? Du möchtest die Feldverknüpfung aufheben oder nur sperren? Und welche Eigenschaften sollen nicht verloren gehen?
Viele Grüße
Lisa
-
Hallo Lisa,
aktuell habe ich großes Template (*.dotm) das aus 5 Kapiteln besteht und 7 Appendix.
Innerhalb diese habe ich verschieden Felder die mit einem individuellen propoertie verlinkt sind.
Beispiel: ProjektnameBisher habe ich das einfach nach dem öffen den Templates einmal unter den advance Propoerties angepasst - StrgA - F9 und im gesamten Dokument stand der richtige Projektname.
Mit unlink werden nun diese Links mit Text überschrieben d.h. der voher überall gleiche Projektname kann nun abweichen da es kein feld mehr ist.Daher mein Frage:
Wie schaffe ich es den referenzierten Text incl. der Feld mit deren Funktionen zu übernehmen auch nach einem Unlink. Im Moment wird durch Unlink der Text aus dem referenzierten Dokument übernommen und die Felder durch den aktuellen Value der Felder als Text überschrieben (z.B. INSERT PROJEKT NAME HERE).
Hoffe das hilft es etwas klarer zu machen was ich brauche.
- Bearbeitet StefanW_82 Freitag, 1. Juni 2018 12:37
-
Hallo Stefan,
du nutzt in einer Art Master-Dokument Feldfunktionen (DOCPROPERTY), welche benutzerdefinierte Dokumenteigenschaften einlesen? Nach einer Änderung der Dokumenteigenschaften aktualisierst du die Felder per Strg+A und F9.Außerdem enthält dieses Masterdokument INCLUDETEXT-Felder, welche die 5 externen Kapitel-Dokumente und die 7 externen Appendix-Dokumente einbindet. In diesen externen Dateien hast du ebenfalls DOCPROPERTY-Felder verwendet - mit gleichem Inhalt?
Ich denke, dass es keine (einfache) Lösung gibt, die Feldfunktionen der externen Dokumente beizubehalten, wenn du die Verknüpfung der INCLUDETEXT-Felder aufhebst. Allerdings bin ich kein VBA-Profi... Insofern wärst du mit deiner Frage besser im MSDN-Forum (MSDN = Microsoft Developer Network) aufgehoben, und zwar im englischsprachigen: https://social.msdn.microsoft.com/Forums/en-US/home?forum=worddev&filter=alltypes&sort=lastpostdescMan könnte schlicht und ergreifend sämtliche Felder in den externen Dokumenten irgendwie kennzeichnen (durch Hervorhebungsfarbe, durch Sonderzeichen für Start/Ende, o. ä.) und nach Aufheben der Verknüpfung per Suchen/Ersetzen durch die gewünschten alten Feldfunktionen oder durch REF-Felder auf die Felder des Hauptdokuments ersetzen.
Abhängig davon, ob es sich im vorliegenden Fall um eine einmalige Geschichte handelt oder ob du häufiger auf diese Art arbeiten musst, stellt sich mir aber die Frage, ob du nicht auch Inhaltssteuerelemente verwenden kannst. Es bieten sich einerseits die speziellen Steuerelemente unter "Einfügen | Schnellbausteine | Dokumenteigenschaften" an, die größtenteils wechselseitig wirken: Ändert man die Inhalte im Steuerelement, ändern sie sich gleichzeitig in den Dokumenteigenschaften - und umgekehrt. Steuerelemente aus den externen Dokumenten werden beibehalten, auch wenn die Feldverknüpfung der INCLUDETEXT-Felder aufgehoben wird.
Alternativ könnten normale Inhaltssteuerelemente (Entwicklertools | Steuerelemente) verwendet werden, die sich per XML verknüpfen lassen. Das bedeutet aber zunächst etwas Aufwand...
Viele Grüße
Lisa