Wiederholen einer Benutzereingabe in einem Microsoft Word-Dokument

11

Ich versuche, ein Dokument zu erstellen, in dem der Benutzer die Möglichkeit erhält, Text einzugeben, und ich möchte dies an den übrigen Stellen in demselben Dokument verwenden. Der vom Benutzer eingegebene Text wird an vielen Stellen im selben Dokument verwendet, und eine jederzeitige Änderung des Namens sollte sich im Rest des Dokuments widerspiegeln.

Zum Beispiel möchte ich auf der allerersten Seite des Dokuments den Namen und das Alter des Benutzers abrufen und an anderen Stellen verwenden, wie im folgenden Screenshot gezeigt.

Geben Sie hier die Bildbeschreibung ein

Ich habe versucht, die Steuerung des Inhalts von Klartext zu verwenden, um den Namen und das Alter zu ermitteln. Ich konnte jedoch keine Möglichkeit finden, diese als Felder in meinen Text einzufügen.

Irgendwelche Ideen, wie ich das erreichen kann? Ich bin sogar bereit, einen Mailmerge durchzuführen, aber ich möchte nicht, dass die Daten von einem anderen Ort als diesem Dokument stammen. Der Screenshot wurde in Office 2013 ausprobiert, aber es wäre großartig, wenn er ab 2007 funktioniert. Ich möchte es nicht mit Makros machen.

Narayanan
quelle

Antworten:

6

Ich denke, Sie müssen die Word-Vorlage und DocVariables verwenden. Dies bedeutet auch etwas VBa, aber dieses Tutorial behandelt es

http://www.gmayor.com/BookmarkandVariableEditor.htm

Als Beispiel dafür, wie man Inhalte von anderen Orten liest, kann dies Sie zum Laufen bringen ... Dies ist nicht perfekt, aber es kann ein guter Anfang sein!

Fügen Sie in Word die Entwicklersymbolleiste zum Menüband hinzu.

Fügen Sie in der Entwickler-Symbolleiste 2 Textfelder auf der Registerkarte Steuerelemente ein.

Klicken Sie auf die Symbolleiste Einfügen.

Klicken Sie nun auf das erste Textfeld (das, in das auch Text kopiert werden soll). Stellen Sie sicher, dass Sie auf die 3 kleinen Punkte auf der linken Seite klicken, damit das gesamte Textfeld ausgewählt wird. Wenn Sie es ausgewählt haben, sollte das Lesezeichen (unter Links) aktiviert werden. Klicken Sie darauf und geben Sie ihm einen passenden Namen.

Klicken Sie auf das zweite Textfeld und machen Sie dasselbe, aber klicken Sie diesmal auf Querverweis. Wählen Sie im Dropdown-Feld Lesezeichen aus und suchen Sie das betreffende Lesezeichen.

Dies ist eingerichtet, aber Sie müssen das Feld manuell aktualisieren. Geben Sie also Text in das erste Textfeld ein, klicken Sie mit der rechten Maustaste auf das zweite und wählen Sie Felder aktualisieren. Wie gesagt, nicht perfekt, aber hoffentlich ein Anfang!

Dieser Artikel erklärt, dass dies mit einer Vorlage und Makros möglich ist. http://word.mvps.org/FAQs/Userforms/CreateAUserform.htm

Dave
quelle
Der Schlüssel zum Erstellen des Lesezeichens war das Klicken auf die drei Punkte.
Schiff
12

Für Windows Word 2007 und höher können Sie einige der Inhaltssteuerelemente verwenden, die Word über Einfügen-> Schnellteile-> Dokumenteigenschaft einfügt. Wenn Sie beispielsweise die Dokumenteigenschaft "Autor" einfügen, fügt Word ein Inhaltssteuerelement ein, das diese einfügt ist mit der eingebauten Eigenschaft verbunden. Wenn Sie also den Wert in einer Kopie des Inhaltssteuerelements ändern, wird der Eigenschaftswert aktualisiert, und alle anderen Inhaltssteuerelemente des Autors werden automatisch aktualisiert. Dies unterscheidet sich von dem Ansatz vor Word 2007, bei dem Sie ein {AUTHOR} -Feld einfügen, auswählen und aktualisieren mussten.

Auf der Registerkarte "Entwickler" können Sie das resultierende Inhaltssteuerelement auswählen und ihm einen neuen Titel wie "Alter" zuweisen. Anschließend können Sie Kopien des Steuerelements mit diesem Titel kopieren / einfügen. In der Regel ist es auch hilfreich, die Steuerelemente nicht löschbar zu machen.

Wenn Sie die herkömmlichen integrierten Eigenschaften wie Autor usw. nicht verwenden möchten, gibt es eine Reihe von fünf "Eigenschaften", die als Deckblattseiten bezeichnet werden und die Sie stattdessen verwenden können. Diese sind auch über das Menü Dokumenteigenschaft ... verfügbar, die Werte werden jedoch an einer anderen Stelle gespeichert, dh in einem von Word erstellten benutzerdefinierten XML-Teil. Ich denke, dies sind Firmenadresse, Firmen-E-Mail, Firmenfax, Firmen-Telefon und Veröffentlichungsdatum. Auch hier können Sie den Titel auf der Registerkarte Entwickler ändern.

Darüber hinaus müssen Sie VBA oder ähnliches verwenden. Wenn Sie Inhaltssteuerelemente verwenden, müssen Sie einen eigenen benutzerdefinierten XML-Teil erstellen, um die Werte zu speichern, und die Steuerelemente mit diesem Speicher verbinden. Hier finden Sie eine gute Zusammenfassung der verschiedenen Optionen für „Wiederholung Daten“ finden Sie hier

FWIW, wenn Sie Formulare in Word verwenden müssen, ist der "kompatibelste" Typ des Formularfelds das, was in Windows Word als "Legacy-Formularfelder" bezeichnet wird, da dies der einzige Typ ist, der auch in Mac Word funktioniert. Wenn Sie jedoch nur Dinge benötigen, die in Windows Word 2007 und höher funktionieren, bieten Inhaltssteuerelemente einige Vorteile.


quelle
Gibt es eine Möglichkeit, einer Vorlage zusätzliche benutzerdefinierte Felder für die Deckblatt-Eigenschaft hinzuzufügen, damit sie in der Dropdown-Liste Dokumenteigenschaft mit einem benutzerdefinierten Namen angezeigt werden? ZB "Jobnummer"? Vielleicht durch direktes Bearbeiten des XML der Vorlage?
Rick unterstützt Monica
@Rick Sie können keine "Deckblatt" -Eigenschaften hinzufügen, da Word nur die vordefinierten erkennt. Sie können Eigenschaften hinzufügen, die in der Liste angezeigt werden, aber Sie benötigen entweder SharePoint oder Sie müssen in der Lage sein, das zu replizieren, was SharePoint erstellt. Wenn Sie über SharePoint verfügen und eine Dokumentbibliothek mit benutzerdefinierten Spalten erstellen können, verfügt ein aus der Bibliothek geöffnetes Word-Dokument über zusätzliche Eigenschaften. Sobald das Dokument erstellt wurde, kann es eigenständig verwendet werden, aber die Inhaltssteuerelemente funktionieren nicht ganz auf die gleiche Weise (hauptsächlich keine Serverüberprüfung)
Vielen Dank. Ich frage mich, ob es möglich wäre, die XML-Datei direkt zu bearbeiten (da die DOTX-Datei kaum mehr als ein ZIP-Dokument ist) und die benutzerdefinierten Eigenschaften auf diese Weise hinzuzufügen. Ich würde es nur einmal tun müssen. Danke für Ihre Hilfe.
Rick unterstützt Monica
1
Sie könnten, aber das von Word verwendete XML ist ziemlich kompliziert (es gibt einen benutzerdefinierten XML-Teil, der ein Schema für die verschiedenen "Metaproperties" im Dokument definiert. Auch dieses XML wird an keiner Stelle, die ich kenne, ausführlich beschrieben, sodass Sie einen Ausgangspunkt benötigen Übrigens, dieses Material wurde so offensichtlich für die Verwendung mit SharePoint entwickelt, dass es unwahrscheinlich ist, dass Sie jemals Unterstützung erhalten, wenn Sie es unabhängig verwenden. Außerdem würde es wahrscheinlich zu Schwierigkeiten führen, wenn jemand auf diese Weise erstellte Dokumente in ihrem eigenen Format speichert eigenes SharePoinnt-System.
Verstanden. Es ist wahrscheinlich nicht jenseits meiner Fähigkeiten, aber es ist wahrscheinlich auch nicht die Zeit wert, es herauszufinden. Ich werde andere Wege erkunden, um meine Probleme zu lösen.
Rick unterstützt Monica