Repetindo uma entrada do usuário em um documento do Microsoft Word

11

Estou tentando criar um documento no qual o usuário terá a oportunidade de inserir algum texto e eu gostaria de usá-lo nos demais locais do mesmo documento. O texto digitado pelo usuário será usado em muitos lugares no mesmo documento e a alteração do nome a qualquer momento deve ser refletida no restante do documento.

Por exemplo, na primeira página do documento, gostaria de obter o nome e a idade do usuário e usá-lo em outros lugares, conforme mostrado na captura de tela a seguir.

Eu tentei usar o controle de conteúdo de texto sem formatação para obter o nome e a idade. Mas não consegui encontrar uma maneira de inseri-los como campos no meu texto.

Alguma idéia de como posso conseguir isso? Estou até pronto para fazer um mailmerge, mas não quero que os dados sejam de outro lugar além deste documento. A captura de tela foi tentada no Office 2013, mas seria ótimo se funcionasse a partir de 2007. Eu não quero fazer isso com macros.

    
por Narayanan 16.09.2013 / 08:10

2 respostas

6

Acho que você terá que usar o modelo do Word e DocVariables. Isso também significa algum VBa, mas este tutorial cobre isso

link

No entanto, como um exemplo de como fazer o conteúdo ler de outro lugar, isso pode fazer você ir ... Isso não é perfeito, mas pode ser um bom começo!

Por palavra, adicione a barra de ferramentas do desenvolvedor à faixa de opções.

Na barra de ferramentas do desenvolvedor, coloque 2 caixas de texto na guia "Controles".

Clique na barra de ferramentas Inserir.

Agora, clique na primeira caixa de texto (aquela em que o texto também será copiado). Certifique-se de clicar nos 3 pequenos pontos no lado esquerdo para que toda a caixa de texto seja selecionada. Quando você tiver selecionado, o Bookmark (em Links) deve se tornar ativado. Clique nele e dê um nome apropriado.

Clique na segunda caixa de texto e faça o mesmo, mas desta vez, clique em Referência cruzada. Na caixa suspensa, selecione os favoritos e encontre a marca do livro em questão.

Isso está configurado, mas você precisa atualizar manualmente o campo. Então, digite algum texto na primeira caixa de texto, clique com o botão direito na segunda e selecione Atualizar campos. Como eu disse, não perfeito, mas espero que seja um começo!

Este artigo explica que isso pode ser feito com um modelo e macros. link

    
por 16.09.2013 / 09:53
12

Para o Windows Word 2007 e posterior, você pode usar alguns dos controles de conteúdo que o Word insere de Inserir- > Peças rápidas-> Propriedade do documento ... Por exemplo, se você inserir o Propriedade de documento "Autor", o Word insere um controle de conteúdo que está conectado à propriedade interna. Portanto, quando você altera o valor em uma cópia do controle de conteúdo, o valor da propriedade é atualizado. Todos os outros controles de conteúdo do Autor são atualizados automaticamente. Isso é diferente da abordagem anterior ao Word 2007, na qual você precisava inserir um campo {AUTHOR}, depois selecioná-lo e atualizá-lo.

Usando a guia Desenvolvedor, você pode selecionar o controle de conteúdo resultante e fornecer um novo título, como "Idade". Em seguida, você pode copiar / colar cópias do controle com esse título. Geralmente também é útil tornar os controles não deletáveis.

Se você não quiser usar as propriedades internas tradicionais, como Autor, etc., há um conjunto de cinco "propriedades" chamadas Propriedades da Página de Capa que você pode usar. Eles também estão disponíveis no menu Document Property ..., mas os valores são armazenados em um local diferente, ou seja, em uma peça XML personalizada criada pelo Word. Acho que são endereço da empresa, e-mail da empresa, fax da empresa, telefone da empresa e data de publicação. Novamente, você pode modificar o título usando a guia Desenvolvedor.

Além disso, você tem que usar o VBA ou algo assim. Se você estiver usando controles de Conteúdo, precisará criar sua própria peça XML personalizada para armazenar os valores e conectar os controles a esse armazenamento. Você encontrará um bom resumo de várias opções para "repetir dados" aqui

FWIW, se você precisar usar formulários no Word, o tipo de campo de formulário mais "compatível" é chamado de "Campos de Formulário Legado" no Windows Word, porque eles são o único tipo que também funciona no Mac Word. Mas se você só precisa de coisas para trabalhar no Windows Word 2007 e posterior, os controles de conteúdo têm algumas vantagens.

    
por 16.09.2013 / 14:45