VBA, formulários no Word e Avaliação 6
O que você vai ver aqui
Fecha o Módulo 5. Aqui você descobre que automatizar não exige saber programar — e que ler o código gerado é mais fácil do que parece.
Guia Desenvolvedor
Ative em Arquivo, Opções, Personalizar Faixa de Opções. Os grupos principais são Código, Suplementos, Controles, Mapeamento XML e Proteger.
O que é uma macro
Uma macro é uma sequência de comandos gravada e reproduzível. Por trás dela existe código VBA (Visual Basic for Applications). Gravar uma macro é, na prática, escrever código sem digitar código.
Aplicações no Word: aplicar um conjunto de formatações, limpar texto colado, inserir blocos padronizados, converter unidades, gerar cabeçalhos institucionais.
Gravar uma macro
Desenvolvedor, Gravar Macro:
- Nomeie a macro sem espaço e sem acento.
- Escolha onde armazenar: neste documento, ou no modelo
Normal.dotm, o que a torna disponível em todos os documentos. - Atribua a um botão da Barra de Acesso Rápido ou a um atalho de teclado.
- Execute as ações com cuidado, porque tudo é gravado.
- Pare a Gravação.
Para executar: Desenvolvedor, Macros (Alt + F8), selecionar e Executar.
Editor VBA
Alt + F11 abre o editor. A janela tem Project Explorer, janela de Propriedades, janela de Código e janela de Verificação Imediata.
Um módulo gravado tem esta cara:
Sub FormatarPadrao()
Selection.WholeStory
Selection.Font.Name = "Arial"
Selection.Font.Size = 12
Selection.ParagraphFormat.LineSpacingRule = wdLineSpace1pt5
Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
End Sub
Elementos de leitura para a turma:
SubeEnd Subdelimitam o procedimento.- Aspas delimitam texto.
- O apóstrofo inicia um comentário.
- Constantes do Word começam com
wd. Selectionage sobre o que está selecionado;ActiveDocumentage sobre o documento inteiro.
Pequenas edições que já geram valor: trocar a fonte, mudar o tamanho, acrescentar Selection.ParagraphFormat.FirstLineIndent = CentimetersToPoints(1.25).
Depuração
F8executa linha a linha.F9define ponto de interrupção.- Janela Verificação Imediata —
Debug.Printe testes rápidos. - Janela Locais — mostra o valor das variáveis.
Erros mais comuns: nome de objeto errado, esquecer de selecionar algo antes de agir sobre Selection, e macro gravada em documento que depois foi fechado.
Segurança de macro
Arquivo, Opções, Central de Confiabilidade, Configurações de Macro. Padrão recomendado: desabilitar com notificação. Documento com macro deve ser salvo em .docm.
Arquivo de origem desconhecida com macro é vetor clássico de malware — o que conecta diretamente com a aula 08.
Formulários com controles de conteúdo
Desenvolvedor, grupo Controles:
| Controle | Uso |
|---|---|
| Texto Simples | Campo de uma linha |
| Rich Text | Campo com formatação |
| Caixa de Seleção | Marcar ou desmarcar |
| Caixa de Combinação | Lista com digitação livre |
| Lista Suspensa | Lista fechada |
| Selecionador de Data | Calendário |
| Imagem | Espaço para foto |
| Bloco de Construção | Insere conteúdo pré-definido |
O Modo de Design permite editar o texto de instrução dentro do controle. Propriedades define título, tag, se o controle pode ser excluído e os itens da lista.
Para liberar o preenchimento sem permitir alteração do restante: Desenvolvedor, Restringir Edição, Permitir apenas este tipo de edição, Preenchimento de formulários, Sim, Aplicar Proteção.
Avaliação 6
Entregar um pacote de automação documental composto por três artefatos.
Requisitos obrigatórios
- Mala direta — base com no mínimo 20 registros e documento modelo, com pelo menos uma regra condicional e pelo menos um campo com formatação por comutador. Entregar a base, o modelo e o documento mesclado.
- Ciclo de revisão — um documento revisado com controle de alterações e no mínimo cinco comentários, mais a versão final com alterações aceitas e documento inspecionado.
- Formulário com macro — formulário no Word com no mínimo seis controles de conteúdo de pelo menos quatro tipos diferentes, protegido para preenchimento, mais uma macro funcional atribuída a um botão, com o código comentado.
| Critério de correção | Pontos |
|---|---|
| Base de dados bem formada | 10 |
| Mesclagem funcionando e campos corretos | 15 |
| Regra condicional e formatação de campo | 10 |
| Controle de alterações e comentários pertinentes | 10 |
| Versão final aceita e documento inspecionado | 10 |
| Formulário: variedade e configuração dos controles | 15 |
| Proteção do formulário | 5 |
| Macro funcional | 15 |
| Código comentado e legível | 5 |
| Organização e nomenclatura da entrega | 5 |
Na prática
- Ative a guia Desenvolvedor e grave uma macro que formate o documento no padrão da aula 22.
- Abra o editor VBA e leia o código gerado, linha por linha.
- Edite a macro trocando a fonte e acrescentando recuo de primeira linha.
- Execute a macro em modo passo a passo com
F8, acompanhando o efeito. - Monte um formulário de inscrição com lista suspensa, data e caixa de seleção.
- Proteja o formulário para preenchimento e teste a restrição.
Exercícios
- Por que a macro não pode ser gravada usando o mouse para selecionar texto?
- Explique a diferença entre
.docx,.docme.dotm. - Edite uma macro gravada para trocar a fonte e acrescentar recuo de primeira linha.
- Monte um formulário de inscrição com lista suspensa, data e caixa de seleção.
- Relacione a segurança de macros com o conteúdo da aula 08.
Erros comuns
- Salvar em
.docxe perder o código sem perceber. - Gravar a macro selecionando com o mouse, e depois não entender por que ela não funciona.
- Habilitar conteúdo em documento recebido de origem desconhecida.
Checklist de saída
Você automatiza tarefas repetitivas no Word e produz formulários prontos para uso institucional. Encerra o Módulo 5.
Referências
- SANTOS, Heros. Automatize tarefas repetitivas no Microsoft Office com VBA. São Paulo: Novatec, 2018.
- ALEXANDER, Michael; KUSLEIKA, Richard. VBA para Office. Rio de Janeiro: Alta Books, 2016.
- CERT.br. Cartilha de Segurança para Internet. Disponível em: https://cartilha.cert.br/
Testa o que você leu
4 perguntas sobre esta aula. Errar aqui não custa nada - a explicação vem junto da correção.