Controles VBA no Excel: Formulários e ActiveX
⚡ Resumo Inteligente
Os controles VBA no Excel são os elementos interativos, como botões, caixas de seleção e caixas de texto, que compõem uma interface gráfica do usuário. Esta página explica os controles de formulário, os controles ActiveX, as diferenças entre as duas famílias e apresenta um exemplo passo a passo de um botão de comando ActiveX.

Controles VBA: controle de formulário VBA e controles ActiveX no Excel
Controles de formulário/GUI VBA no Excel
GUI é a sigla para Interface Gráfica do Usuário. A GUI é a parte do programa com a qual o usuário interage. Uma GUI é composta de controles. Esses controles Excel VBA podem ser usados em um formulário. A tabela a seguir mostra alguns dos controles GUI VBA mais comumente usados.
| S / N | Controlar | Descrição |
|---|---|---|
| 1 | Command | Usado para executar código |
| 2 | Combo Box | Usado para apresentar uma lista suspensa aos usuários |
| 3 | Verifique Box | Usado para valores verdadeiros ou falsos. Várias caixas de seleção podem ter valor verdadeiro ao mesmo tempo. |
| 4 | Lista Box | Usado para apresentar uma lista simples aos usuários |
| 5 | Texto Box | Usado para aceitar entrada do usuário |
| 6 | Barra de rolagem | Usado para fornecer uma barra de rolagem para fins de navegação. |
| 7 | Botão giratório | Usado para aumentar ou diminuir valores numéricos clicando nas setas para cima ou para baixo que aparecem no botão giratório |
| 8 | Botão de opção | Usado para valores verdadeiros ou falsos. Apenas um botão de opção pode ter um valor verdadeiro por vez. |
| 9 | O rótulo | Usado para exibir texto estático para o usuário |
| 10 | Imagem | Usado para exibir imagens |
| 11 | TogglBotão e | Botão que está pressionado e não pressionado. |
No controle GUI do VBA,
- Clique na guia do desenvolvedor
- Clique no botão suspenso Inserir
Você obterá o seguinte painel suspenso
Se você passar o mouse sobre os controles do formulário VBA, o nome do controle aparecerá conforme mostrado abaixo
Adicionando controles GUI a uma planilha
Vamos agora adicionar um botão de comando à nossa pasta de trabalho, para isso temos que
- Clique no menu suspenso Inserir
- Clique no botão de comando (controle ActiveX) conforme mostrado na imagem acima
- Arraste e desenhe o botão na planilha
Configurando propriedades de controle da GUI
Agora definiremos a legenda do botão para algo mais descritivo
- Clique com o botão direito no botão igual que acabamos de criar
- Selecione o menu de propriedades
- Você obterá a seguinte janela de propriedades
- Defina a propriedade name como btnButton. A propriedade name é usada para identificar o controle na janela de código. btn é o prefixo do botão.
- Defina a propriedade Caption como Click Me. O texto na propriedade caption é o que os usuários verão no botão.
Feche a janela quando terminar.
Você obterá os seguintes resultados.
Diferença entre controles de formulário e controles ActiveX
O Excel oferece duas famílias de controles, e escolher a correta simplifica o projeto. Os controles de formulário são integrados ao Excel e executam uma única macro atribuída, enquanto os controles ActiveX são objetos programáveis que respondem a diversos eventos por meio de código VBA. A tabela abaixo compara os dois.
| Característica | Controles de formulário | Controles ActiveX |
|---|---|---|
| instalação | Simples; atribua uma macro ao controle. | Requer código de evento VBA para responder. |
| Propriedades | Conjunto limitado de opções | Abrangente, incluindo fonte, cor e comportamento. |
| Eventos | Ação única ao clicar | Muitos eventos como Click, Change e GotFocus |
| Compatibilidade | Funciona em Windows e Mac Excel | Funciona em Windows Somente Excel |
| Mais adequado para | Tarefas rápidas e simples em planilha | Formulários de usuário interativos e dinâmicos |
Resumindo, use um controle de formulário quando uma única macro for suficiente e escolha um controle ActiveX quando a interface precisar de propriedades complexas ou de reagir a vários eventos do usuário.
Requisito prévio
Antes de criar o exemplo ActiveX, prepare a pasta de trabalho para que os controles estejam disponíveis e as macros possam ser salvas.
configurar Microsoft Excel
Como vimos no tutorial anterior, certifique-se de que sua faixa de opções tenha o ícone “Desenvolvedor” conforme mostrado aqui.
Agora, renomeie a planilha1 para “VBA Operaconforme mostrado na captura de tela abaixo. Salve a planilha com a extensão de arquivo "Pasta de Trabalho Habilitada para Macros do Excel" (*.xlsm). (veja a imagem abaixo)
Depois disso, clique no botão Salvar.
Como usar o controle ActiveX em VBA
Com a planilha pronta, podemos adicionar um botão ActiveX funcional. Nesta seção sobre controles ActiveX no Excel, veremos como incorporar um botão 'commandclick' em VBA e executar um programa usando esse botão.
Passo 1) Nesta etapa, clique na opção “botão inserir” do Active X Control. Em seguida, selecione a opção do botão de comando.
Passo 2) Para inserir “clickcommandbutton1” arraste o cursor do mouse para a planilha do Excel.
Passo 3) Em seguida, clique com o botão direito do mouse no botão de comando e selecione a opção “Exibir”. Code".
Passo 4) Verifique se você está na folha certa. Um editor de código será aberto. Insira seu código.
- No código, definimos o intervalo A1 a A10.
- Este intervalo define o número da célula na planilha Excel de “A1 a A10”.
- Em seguida, definimos a string “Guru99 Tutorial de VBA” em código
- Portanto, ao clicar no botão “Comando” no Excel, deve ser impresso “Guru99 Tutorial de VBA” no intervalo de células “A1 a A10”.
Passo 5) Na próxima etapa, salve o arquivo de código e saia do editor. Para retornar ao arquivo Excel, clique no ícone da planilha Excel na extrema esquerda.
Passo 6) Na planilha do Excel, você verá que a guia Modo de Design está ativada. Certifique-se de que esteja “DESLIGADO” ou seu código não funcionará.
Passo 7) Quando o modo de design estiver desativado, não haverá destaque verde nele. Agora você pode clicar no botão de comando.
Passo 8) Clique em “CommandButton1”. Ele imprimirá “Guru99 Tutorial de VBA” no intervalo de células “A1 a A10”.
Baixe o Excel contendo o código acima
Eventos comuns de controles ActiveX em VBA
Um controle ActiveX é poderoso porque reage a eventos, que são ações que o usuário executa no controle. Cada evento executa sua própria sub-rotina, portanto, o mesmo botão pode se comportar de maneira diferente dependendo da ação do usuário. Os eventos mais comuns estão listados abaixo.
- Clique – executa o código quando o usuário clica no controle, o evento usado no exemplo acima.
- Mudar – é executado quando o valor de um controle muda, como typing em uma caixa de texto ou selecionando um item de uma caixa de combinação.
- GotFocus / LostFocus – É executado quando o controle ganha ou perde o foco, útil para validar a entrada.
- Keypress – É executado quando o usuário pressiona uma tecla enquanto o controle está ativo.
- Movimento do mouse – É executado quando o ponteiro do mouse se move sobre o controle.
- Clique duplo – É executado quando o usuário clica duas vezes no controle.
Para adicionar código a qualquer evento, ative o Modo de Design, clique com o botão direito do mouse no controle e escolha Exibir. Codee selecione o evento na lista suspensa na parte superior da janela de código.
















