Pergunta

Eu gostaria de poder criar um elemento de página que eu possa alimentar o texto e ele se formará no layout preferido. Por exemplo:

{MACRO DocumentIntro("Introduction to Business Studies", "FP015", "Teachers' Guide")}

Com isso como um campo, a saída deve ser uma linha, as duas primeiras cordas de um determinado tamanho e fonte, centradas, outra linha e depois a terceira corda fonada, dimensionada e centralizada.

Eu sei que isso é meio que Tex e talvez além do escopo do VBA, mas se alguém tiver alguma idéia de como pode ser possível, por favor, diga!

EDITAR:

OK, se eu colocar as informações necessárias na palavra -chave, como parte das propriedades do documento, com algum tipo de separador exclusivo, isso obtém essas informações e as informações serão exclusivas para cada documento. Em seguida, coloca um marcador onde o material será exibido. Então um cria um AutoOpen Macro que vai para esse marcador, retira os relevantes das palavras -chave e forma o texto adequadamente para o favorito .Selection.

Isso é viável?

Foi útil?

Solução

Você certamente está no caminho certo aqui para uma solução de codificação. No entanto, existe uma maneira mais simples, sem código - esse é o tipo de cenário que os controles de conteúdo do Word 2007 foram construídos para e com campos/propriedades, você pode se ligar aos controles de conteúdo (CC). Esses CC podem conter estilos (como centralizado, ousado, etc.). Não é necessário VBA.

A coisa mais fácil a fazer é escolher três propriedades de documentos internas que você sempre deseja que sejam. Por exemplo, "Title" pode ser sua primeira string, "sujeito" sua segunda sequência e "palavras -chave" sua terceira. Então, basta ir para o Inserir fita, Peças rápidas, Propriedades do documento e insira, coloque e formate aqueles como você gosta. Em seguida, vá para o botão Iniciar do Word (The Orb Thingy) e depois sob Preparar escolher Propriedades. Aqui você pode digitar, por exemplo "Introdução aos estudos de negócios", no Título Caixa e, em seguida, basta desmarcá -lo de alguma forma (como clique em outra caixa). O controle de conteúdo para Título será preenchido automaticamente com seu texto.

Se você deseja usar isso para vários arquivos, basta criar esse arquivo como um .dotx (após a inserção/colocação/formatação do CC e antes de atualizar o texto das propriedades do documento). Toda vez que tudo o que você precisará fazer é definir essas três propriedades com cada novo arquivo.

Outras dicas

Bem, sim, acabou sendo viável.

Sub autoopen()
    Dim sKeywords As String
    sKeywords = ActiveDocument.BuiltInDocumentProperties(4)
    ActiveDocument.Bookmarks("foo").Select
    Selection.Text = sKeywords
End Sub

Ok, eu tenho alguns preenchimentos a fazer, mas pelo menos as entranhas estão lá.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top