Ripetizione di un input dell'utente in un documento di Microsoft Word


11

Sto cercando di creare un documento in cui all'utente verrà data la possibilità di inserire del testo e vorrei utilizzarlo negli altri punti dello stesso documento. Il testo inserito dall'utente verrà utilizzato in molti punti dello stesso documento e la modifica del nome in qualsiasi momento dovrebbe riflettersi nel resto del documento.

Ad esempio, nella prima pagina del documento, vorrei ottenere il nome e l'età dell'utente e usarlo in altri luoghi, come mostrato nella seguente schermata.

inserisci qui la descrizione dell'immagine

Ho cercato di utilizzare il controllo del contenuto in testo normale per ottenere il nome e l'età. Ma non sono riuscito a trovare un modo per inserirli come campi nel mio testo.

Qualche idea su come posso raggiungere questo obiettivo? Sono anche pronto a fare un mailmer, ma non voglio che i dati provengano da qualsiasi luogo diverso da questo documento. La schermata è stata provata in Office 2013, ma sarebbe fantastico se funzionasse dal 2007 in poi. Non voglio farlo con le macro.

Risposte:


6

Penso che dovrai usare il modello Word e DocVariables. Questo significa anche alcuni VBa ma questo tutorial lo copre

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

Tuttavia, come esempio per farlo leggere contenuti da altre parti, questo potrebbe farti andare ... Questo non è perfetto ma, potrebbe essere un buon inizio!

A parole, aggiungi la barra degli strumenti dello sviluppatore alla barra multifunzione.

Dalla barra degli strumenti dello sviluppatore, rilasciare 2 caselle di testo dalla scheda dei controlli.

Fai clic sulla barra degli strumenti Inserisci.

Ora, fai clic sulla prima casella di testo (quella in cui deve essere copiato anche il testo). Assicurati di fare clic sui 3 piccoli punti sul lato sinistro in modo da selezionare l'intera casella di testo. Dopo averlo selezionato, il segnalibro (sotto Collegamenti) dovrebbe essere abilitato. Cliccaci sopra e dagli un nome appropriato.

Fai clic sulla seconda casella di testo e fai lo stesso, ma questa volta fai clic su Riferimenti incrociati. Nella casella a discesa, selezionare i segnalibri e quindi trovare il segno di libro in questione.

Questo è impostato, ma è necessario aggiornare manualmente il campo. Quindi, digita del testo nella prima casella di testo, quindi fai clic con il pulsante destro del mouse sulla seconda e seleziona Aggiorna campi. Come ho già detto, non perfetto, ma si spera un inizio!

Questo articolo spiega che può essere fatto con un modello e macro. http://word.mvps.org/FAQs/Userforms/CreateAUserform.htm


La chiave per poter creare il segnalibro era fare clic sui tre punti.
nave

12

Per Windows Word 2007 e versioni successive, è possibile utilizzare alcuni dei controlli del contenuto che Word inserisce da Inserisci-> Parti rapide-> Proprietà del documento ... Ad esempio, se si inserisce la proprietà del documento "Autore", Word inserisce un controllo del contenuto che è collegato alla proprietà integrata. Pertanto, quando si modifica il valore in una copia del controllo del contenuto, il valore della proprietà si aggiorna, quindi tutti gli altri controlli del contenuto dell'autore vengono aggiornati automaticamente. Questo è diverso dall'approccio pre-Word 2007 in cui è stato necessario inserire un campo {AUTORE], quindi selezionarlo e aggiornarlo.

Utilizzando la scheda Sviluppatore, è possibile selezionare il controllo del contenuto risultante e assegnargli un nuovo titolo come "Età". Quindi è possibile copiare / incollare copie del controllo con quel titolo. Di solito è anche utile rendere i controlli non cancellabili.

Se non si desidera utilizzare le proprietà incorporate tradizionali come Autore, ecc., È possibile utilizzare una serie di cinque "proprietà" chiamate Proprietà pagina di copertina. Questi sono disponibili anche dal menu Proprietà documento ..., ma i valori sono memorizzati in una posizione diversa, ovvero in una parte XML personalizzata creata da Word. Penso che si tratti di indirizzo dell'azienda, e-mail aziendale, fax aziendale, telefono aziendale e data di pubblicazione. Ancora una volta, è possibile modificare il titolo utilizzando la scheda Sviluppatore.

Oltre a ciò, devi usare VBA o alcuni di questi. Se si utilizzano i controlli del contenuto, è necessario creare la propria parte XML personalizzata per archiviare i valori e collegare i controlli a tale archivio. Troverete una buona sintesi di varie opzioni per i "dati ripetuti" qui

FWIW, se è necessario utilizzare i moduli in Word, il tipo di campo modulo più "compatibile" è quello che viene chiamato "Campi modulo legacy" in Windows Word, poiché questi sono gli unici tipi che funzionano anche in Mac Word. Ma se hai solo bisogno di cose per funzionare in Windows Word 2007 e versioni successive, i controlli del contenuto presentano alcuni vantaggi.


Esiste un modo per aggiungere ulteriori campi "proprietà della pagina di copertina" personalizzati a un modello in modo che vengano visualizzati nell'elenco a discesa Proprietà documento con un nome personalizzato? Ad esempio, "Numero lavoro"? Forse modificando direttamente l'XML del modello?
Rick supporta Monica il

@Rick non puoi aggiungere proprietà "frontespizio" perché Word riconosce solo quelle predefinite. È possibile aggiungere proprietà che verranno visualizzate nell'elenco, ma è necessario SharePoint o essere in grado di replicare ciò che SharePoint crea. Se si dispone di SharePoint e si è in grado di creare una raccolta documenti con colonne personalizzate, un documento di Word aperto dalla libreria avrà ulteriori proprietà. una volta che il documento è stato creato, può essere utilizzato autonomamente, ma i controlli del contenuto non funzionano allo stesso modo (principalmente, nessuna convalida del server)

Grazie. Mi chiedo se sarebbe possibile modificare direttamente il file XML (poiché il file .dotx è poco più di un documento ZIP) e aggiungere le proprietà personalizzate in quel modo. Avrei solo bisogno di farlo una volta. Grazie per l'aiuto.
Rick supporta Monica il

1
Potresti, ma l'XML che Word usa è piuttosto complicato (c'è una parte XML personalizzata che definisce uno schema per le varie "metaproperties" nel documento. Né l'XML è descritto in dettaglio ovunque io conosca, quindi hai bisogno di un punto di partenza che qualcuno ha creato su SharePoint. A proposito, queste cose sono così ovviamente progettate per l'uso con SharePoint che è improbabile che tu abbia mai alcun supporto mentre lo usi in modo indipendente. Inoltre, probabilmente causerebbe difficoltà se qualcuno memorizzasse i documenti creati in questo modo nel loro proprio sistema SharePoinnt.

Inteso. Probabilmente non va oltre le mie capacità, ma probabilmente non vale la pena dedicare del tempo a capire. Esplorerò altre strade per risolvere i miei problemi.
Rick supporta Monica il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.