Tutoriais Word
Home  |  Tutoriais  |  Artigos  |  VBA  |  Download  |  eBooks Word VBA  |  Dicas e Truques  |  Teclas de Atalho  |  Serviços  |  Contato


Categorias

Básico/Intermediário

  Avançado

  VBA

  Tabelas

  Formulário

  Campo

  Livros

  ABNT

  TCC

Personalizando Formulário

eBook Word 2010 VBA

Tabela do Word como banco de dados

Formulário com Macro





Às vezes para executar uma operação é preciso recorrer a uma pequena rotina de programação em linguagem Visual Basic for Applications (VBA). Isso é necessário porque não há uma outra forma, senão via programação, de capturar os valores definidos nos Campos de formulário suspensos (caixa de combinação), somá-los e lançar o resultado no Campo de formulário Texto (Caixa de texto).


Formulário


Neste exemplo temos um formulário e neste formulário temos três Campos de formulário suspenso (caixas de combinação) chamadas Dropdown1, Dropdown2 e Dropdown3 e um Campo de formulário texto (caixa de texto) chamada Texto1, mantendo os nomes-padrão atribuídos pelo programa.


Formulário


Cada Campo de formulário suspenso possui vários valores que serão selecionados pelo usuário e o total deverá ser somado automaticamente no Campo de formulário texto.


Observe a sequência de imagens abaixo:


Selecionando o primeiro valor.


Campo de Formulário Texto


Selecionando o segundo valor.


Campo de Formulário Texto


Selecionando o terceiro valor.


Campo de Formulário Texto

Para que a somatória seja feita automaticamente no Campo de formulário texto (caixa de texto), vamos usar um pouco de programação VBA. Para isso clique no Menu Ferramentas >> Macro >> Editor do Visual Basic ou se referir acione a combinação de teclas Alt+F11.


Editor do Visual Basic


No Editor do Visual Basic, você vê à esquerda a caixa Projeto. Clique em Project (Nome do Documento). Nome do Documento, aqui, é o nome do arquivo de seu formulário, sem extensão. Dentro dessa pasta Project há outra, chamada Microsoft Word Objetos e, dentro desta última, ThisDocument. Dê um duplo clique em ThisDocument para abrir uma janela de código em branco.


Janela de Código


Na janela de código em branco cole o seguinte código.


Sub SomaCampos()

   Dim a As Double, b As Double, c As Double 

   ActiveDocument.FormFields("Texto1").Result = "" 

   a = CDbl(ActiveDocument.FormFields("Dropdown1").Result) 

   b = CDbl(ActiveDocument.FormFields("Dropdown2").Result)

   c = CDbl(ActiveDocument.FormFields("Dropdown3").Result)

   ActiveDocument.FormFields("Texto1").Result = a + b + c

End Sub


Deverá ficar assim:


Janela de Código


Essa rotina (macro) chamada SomaCampos pega o valor atual dos três Campos de formulário suspenso (caixas de combinação), soma-os e escreve o resultado no Campo de formulário texto (caixa de texto).


Feche o Editor do Visual Basic.


Agora devemos ajustar o formulário, portanto, vamos voltar a cada Campo de formulário suspenso, selecione o campo e com o botão direito do mouse selecione Propriedades.


Propriedades


Em Executar macro, na caixa Saída, selecione o nome da macro SomaCampos, que é uma das opções. Repita esse procedimento em todas os Campos de formulário suspenso. Para finalizar clique em OK


Opções do campo de formulário suspenso


Não se esqueça de proteger o formulário, pois isso é indispensável para que tudo funcione adequadamente. Para proteger o formulário você deve clicar na ferramenta Proteger formulário. Observe a imagem abaixo.


Formulários


Selecione os valores dos Campos de formulário suspenso (caixas de combinação) e veja que o resultado no Campo de formulário texto (caixa de texto) atualiza automaticamente.


Campo de formulário texto


Considerações finais:


Use a tecla Tab para navegar pelos campos de formulários.


Tab para avançar


SHIFT + TAB para retornar


Para evitar erros na operação, incluí nas opções dos Campos de formulario suspenso (caixas de combinação) o valor 0 como o primeiro da lista. Também é possível deixar essa opção em branco ou trocá-la por algo como "Selecione um valor". Nesse caso, para evitar erro, seria necessário alterar o código: antes de executar a soma, verificar se o valor da caixa de combinação é um texto e, nesse caso, trabalhar com ele como equivalente ao valor numérico zero.




Veja também...


Conhecendo os Controles de Formulários


Como criar Formulário no Word


Como criar Formulários com Cálculo automático - Exemplo 1


Como criar Formulários com Cálculo automático - Exemplo 2


Como proteger somente o Formulário e deixar o restante do documento livre para edição


Formulário com Macro - Exemplo 1: Cálculo Automático


Formulário com Macro - Exemplo 2: Repetindo conteúdo dos controles


Formulário com Macro - Exemplo 3: Caixa de Seleção


Formulário com Macro - Exemplo 4: Usar Enter em vez de Tab


Inserindo Texto de Ajuda



eBook Word 2010 VBA

      

 Inscreva-se

 E seja informado sempre que um novo tutorial for publicado.

 E mais... Você poderá fazer gratuitamente o download de 02(dois) e-Books:
- Como preencher uma tabela(VBA) - Iniciante;
- Como preencher uma tabela com várias linhas(VBA) - Iniciante.


 Nome* 
 E-mail* 
 *Preenchimento obrigatório.
Prometemos não utilizar suas informações de contato para enviar qualquer tipo de SPAM.

 



eBook Word 2010 VBA




© 2013 Tutoriais Word - Todos os direitos reservados