Lomeutec - Tutoriais e Informação
ESTE BLOG NÃO É MAIS ATUALIZADO. SUAS ATIVIDADES FORAM DEFINITIVAMENTE ENCERRADAS EM 2020.

Usando combobox no Word 2003 e 2010

Essa publicação foi criada para tentar resolver o problema de um leitor do blog. É que na postagem sobre a criação de formulários no Word surgiu um entrave com o recurso drop-down por causa das limitações que vão da quantidade máxima de palavras que pode ser inserida - somente 25 -  ao tamanho de cada palavra - no máximo 50 caracteres. A solução será usar o combobox.

Word

Word 2003:

Não vou recriar um formulário inteiro, apenas demonstrarei como usar o recurso do combobox de maneira fácil e rápida. Vamos criar a combobox. Clique no menu "Exibir", "Barra de ferramentas" e clique em "Caixa de ferramentas de controle".


Aparecerá uma nova barra de ferramentas flutuante. Deixe o cursor onde você deseja colocar a combobox e selecione "Caixa de combinação" . Ficará com esse aspecto.


Dê dois cliques rápidos na combobox e será aberto o modo para inserir códigos VBA. Na caixa de seleção no topo da direita escolha "GotFocus". Ficará assim:


Insira o seguinte código:

    ComboBox1.Clear
    ComboBox1.AddItem "Lomeutec - Tutoriais e Informação"
    ComboBox1.AddItem "Magalhães e Marinho Advogadas"
    ComboBox1.AddItem "Dias & Dias Parados LTDA"

Onde está azul você coloca o que quiser. Serão as opções que irão aparecer na hora de selecionar. Veja o código inserido.


Você pode adicionar outros itens como opção. Basta ir adicionando linhas iguais as que estão abaixo no código:

ComboBox1.AddItem "Mais um item"

Agora vou inserir outra combobox mais abaixo no formulário, mas dessa vez irei colocar frases grandes. Isso não seria possível com o recurso do drop-down. Depois de inserir a combobox, dar dois cliques nela e selecionar "GotFocus" na caixa de seleção, você verá a seguinte imagem.


O código que você irá inserir é praticamente o mesmo usado na primeira combobox. A diferença é que o nome dessa combobox é "ComboBox2", portanto você deve alterar isso também. Veja:

    ComboBox2.Clear
    ComboBox2.AddItem "Lomeutec - Tutoriais e Informações é um blog que fala de informática descomplicada"
    ComboBox2.AddItem "Magalhães e Marinho Advogadas é uma empresa séria que presta serviços advocatícios"
    ComboBox2.AddItem "Dias & Dias Parados LTDA é uma sátira criada por um professor"

Conforme você for inserindo combobox no seu formulário elas irão adquirindo nomes como "ComboBox3", "ComboBox4", "ComboBox5" e assim por diante. Preste atenção nisso.

Voltando ao formulário de exemplo ele terá essa aparência:


Clique no botão com ícone de esquadro na janela flutuante. É o primeiro ícone da barra de ferramentas de controle. Assim poderemos ver o resultado. Depois selecione algo nas combobox simulando um preenchimento no formulário.


Talvez não tenha ficado bom, pois a caixa de seleção ficou pequena escondendo o texto. Clique novamente no botão com o esquadro e depois um dê clique para selecionar a combobox. Isso fará com que apareçam marcadores para que possamos redimensioná-las.


Faça mais uma simulação de prenchimento e veja se conseguiu ajustar corretamente.

Caso tenha problemas e pareça não funcionar mesmo tendo feito à risca o que foi dito, pode ser que a segurança de macro do Word 2003 esteja causando algum bloqueio. Para resolver isso vá ao menu "Ferramentas" e clique em "opções". Irá abrir uma janela com várias abas. Clique na aba "Segurança" e depois no botão "Segurança de macro".


Ao clicar nesse botão será aberta outra janela. Na aba "Nível de segurança" deixe selecionada a opção "Médio" e dê o clique em "OK".


Fazendo isso - toda vez que o documento for aberto - será perguntado se você deseja ou não executar a macro. Aí é só confirmar no botão "Habilitar macro". E então estará pronto.


Já está pronto, mas da forma como está o código, ao ganhar o foco, o campo é limpado. Se isso estiver lhe causando transtorno você pode adicionar o código de outra forma de modo que ele seja carregado junto com o documento ao invés de somente quando clicar na combobox. Para isso crie o código da seguinte forma:

Vá ao menu "Ferramentas", clique em "Macro" e depois  em 'Editor do Visual Basic". A janela será assim:


 Em "ThisDocument" Cole:

Private Sub Document_Open()

End Sub

E no meio disso coloque os códigos das combobox. No caso do exemplo acima ficou assim:

Private Sub Document_Open()

    ComboBox1.Clear
    ComboBox1.AddItem "Lomeutec - Tutoriais e Informação"
    ComboBox1.AddItem "Magalhães e Marinho Advogadas"
    ComboBox1.AddItem "Dias & Dias Parados LTDA"

    ComboBox2.Clear
    ComboBox2.AddItem "Lomeutec - Tutoriais e Informações é um blog que fala de informática descomplicada"
    ComboBox2.AddItem "Magalhães e Marinho Advogadas é uma empresa séria que presta serviços advocatícios"
    ComboBox2.AddItem "Dias & Dias Parados LTDA é uma sátira criada por um professor"

End Sub

Você pode usar um ou outro método. Mas eu acho que dessa forma fica bem melhor.

Se você "pegou o bonde andando" recomendo que vejas as publicações "Trabalhando com campos editáveis no Word" e "Recursos para criação de formulários no Word". Isso talvez possa esclarecer algumas dúvidas que venham a surgir.

_______________________________________

Word 2010:

Para entender como usar o básico de uma combobox no Word 2010, leia a publicação inteira. Digo isso porque só colocarei aqui os pontos divergentes entres as versões, pois não vejo a necessidade de repetir algumas coisas.

Começarei mostrando como habilitar os recursos que você ira precisar. Abra o Word vá ao menu "Arquivo" e clique em "opções".


Será aberta outra janela onde você deverá clicar em "Personalizar Faixa de Opções" e marcar a checkbox "Desenvolvedor".


Feito isso ficará diponível a guia "Desenvolvedor" que possui as ferramentas de que precisamos. Veja que os recursos usados na criação de formulários estão em "Controles".


Para abrir o editor do visual basic o botão está no canto esquerdo da guia desenvolvedor.


A partir desse ponto, se você leu a publicação inteira, não haverá nada à acrescentar. Crie seu formulário e adicione sua combobox (Caixa de combinação). Os códigos usados são os mesmos e aplicados da mesma forma. A diferença pode estar na hora de salvar. Por possuir comandos em VBA, o documento no Word 2010 deve ser salvo como "Documento Habilitado para Macro do Word".


Se quiser baixar os arquivos usados neste exemplo clique aqui.
Senha para descompactar: lomeutec

Nilton (LOMEUTEC)
É formado como técnico em informática com ênfase em análise de sistemas e programação comercial. No entanto gosta mesmo é de fazer publicações para o blog lomeutec.blogspot.com onde compartilha grande parte do pouco conhecimento autodidata que adquire através de experiências, estudos diários e até mesmo de tudo aquilo que descobre enquanto navega despreocupadamente pela internet em seus momentos de ócio. Aqui no LTI acumula funções de publicador, moderador, editor, administrador e o que mais for possível e necessário.