Os controles ActiveX são componentes interativos que podem ser usados no Microsoft Excel para aprimorar os recursos da planilha. Usando controles ActiveX, os usuários podem criar interfaces mais atraentes e flexíveis, como caixas de texto, caixas de listagem, caixas de combinação, caixas de seleção e botões de opção.
Esse recurso é alimentado pelo Visual Basic for Applications (VBA), que permite que os usuários escrevam código para organizar as interações entre usuários e planilhas do Excel.
A presença do ActiveX no Excel VBA é essencial porque oferece uma ampla gama de vantagens. Os controles ActiveX fornecem interações mais intuitivas, como escolher em uma lista ou inserir texto. Além disso, com o VBA, os usuários podem personalizar o comportamento e a aparência dos controles conforme necessário, como preencher automaticamente as caixas de combinação do banco de dados.
O ActiveX também ajuda a reduzir erros de entrada fornecendo controles estruturados, como uma caixa de seleção para opções Sim/Não. Os controles ActiveX podem ser integrados às macros VBA, o que permite a automação de várias tarefas, incluindo validação de dados e relatórios dinâmicos.
Diferença entre controles ActiveX e controles de formulário no Excel
No Excel, há dois tipos principais de controles que você pode usar: ActiveX Controls e Form Controls.
Comparação | ActiveX Controls | Form Controls |
Interatividade | Mais dinâmico, programável com VBA | Menos flexível, apenas para funções essenciais |
Personalização | Redimensionar, cor e outras propriedades | Limitações nas configurações de exibição |
Compatibilidade | Funciona apenas no Windows e requer VBA | Pode ser usado no Windows & Mac |
Facilidade de uso | Precisa de conhecimento do VBA para configuração avançada | Fácil de usar sem codificação |
Responsividade | Pode responder a eventos como cliques, focos ou entradas | Tem apenas funções básicas, como executar macros |
Se você precisar de controles mais complexos e integração com o VBA, os controles ActiveX são o caminho a percorrer. No entanto, se você quiser apenas usar botões ou listas simples sem a necessidade de programação, os Controles de Formulário serão suficientes.
Habilitando controles ActiveX no Excel
Se ActiveX Controls não funcionarem no Excel, as configurações de segurança internas do Excel provavelmente limitarão esse recurso. A Microsoft restringe automaticamente o uso de ActiveX Controls para evitar riscos de segurança, como a execução de código mal-intencionado de fontes não confiáveis. Portanto, você precisa alterar as configurações de segurança no Trust Center para que o Excel possa usar ActiveX Controls mais livremente. Você pode habilitar uma opção que permite que os controles ActiveX operem sem restrições ou solicitar confirmação antes de ativá-los.
Passos:
- Abra o aplicativo Microsoft Excel.
- Clique no menu File, selecione Options e prossiga para Trust Center.
- Na janela exibida, selecione Trust Center Settings….
- No painel esquerdo, localize e selecione ActiveX Settings.
- Você verá várias opções; Escolha uma das seguintes opções:
- Enable all controls without restrictions and without prompting (Habilite todos os controles sem restrições e solicitações de confirmação).
- Ou, se você quiser um nível mais alto de segurança, escolha Prompt me before enabling all controls with minimal restrictions (Peça confirmação antes de ativar todos os controles com restrições mínimas).
- Após escolher, clique em OK e feche todas as janelas de configurações que se abrem.
Tipos de controles ActiveX e como usá-los
No Excel VBA, ActiveX Controls são usados para melhorar a interatividade e a automação em planilhas. Aqui estão alguns dos controles mais usados e como usá-los.
Outros artigos interessantes
1. Caixa de texto
O Text Box permite que os usuários insiram ou exibam texto em uma UserForm ou planilha do Excel. Com VBA, podemos definir o conteúdo do Text Box, preenchendo os dados automaticamente ou recebendo informações dos usuários.
Como criar uma caixa de texto no Excel VBA
- Abra o Excel e ative a guia Developer.
- Selecione Developer > Insert > Text Box (ActiveX Controls).
- Clique e arraste para criar um Text Box na planilha.
- Para adicionar um código VBA, clique com o botão direito do mouse em Text Box e selecione View Code.
Exemplo de código VBA para preencher automaticamente caixas de texto
O código a seguir preencherá automaticamente o Text Box com texto quando ele for executado:
TextBox1.Text “Data imported successfully”