2. Caixa de listagem
List Box é um elemento de controle que serve para exibir uma lista de seleções, permitindo que o usuário selecione um ou mais itens. Isso é especialmente útil em formulários de entrada de dados ou para navegação entre páginas em aplicativos que usam Excel VBA.
Como adicionar dados a uma caixa de listagem no Excel VBA
- Abra a guia Developer no Excel.
- Selecione Insert > List Box (ActiveX Controls).
- Clique e arraste para colocar o List Box na planilha.
- Clique com o botão direito do mouse em List Box > Properties.
Exemplo de código VBA para adicionar itens à caixa de listagem
Use o seguinte código VBA para adicionar vários nomes de cidades ao List Box:
With Sheet1.ListBox1
.AddItem “Jakarta”
.AddItem “Surabaya”
.AddItem “Bandung”
End With
Este código pode ser colocado em Workbook_Open caso para que os dados sejam carregados automaticamente quando o arquivo for aberto.
Conectando caixas de listagem com células no Excel
Para exibir os itens selecionados do List Box para uma célula específica, execute as seguintes etapas:
- Clique com o botão direito do mouse em List Box e selecione Properties.
- Localize a propriedade LinkedCell e insira o endereço da célula (exemplo: D3).
- Agora, sempre que o usuário selecionar um item no List Box, o valor aparecerá na célula D3.
Se você quiser recuperar o valor selecionado usando VBA, use o seguinte código:
Range(“D3”).Value = ListBox1.Value
Outros artigos interessantes
3. Caixa de combinação
Combo Box é um controle ActiveX no Excel VBA que serve como uma lista de opções que podem ser puxadas para baixo. Os usuários podem selecionar um único item da lista ou digitar seu texto. Um Combo Box é frequentemente usado em formulários de entrada para minimizar erros ao inserir dados, pois os usuários só podem escolher entre as opções fornecidas.
Como adicionar dados dinâmicos a uma caixa de combinação
Para adicionar um Combo Box a uma planilha, siga estas etapas:
- Abra o Excel e certifique-se de que a guia Developer esteja ativada.
- Clique em Developer > Insert > Combo Box (ActiveX Controls).
- Clique e arraste para desenhar Combo Box na planilha.
- Clique com o botão direito do mouse em Combo Box e selecione Properties.
Exemplo de código VBA para adicionar itens a uma caixa de combinação dinamicamente
Use o código a seguir para adicionar itens ao Combo Box automaticamente quando a pasta de trabalho for aberta ou o botão for clicado:
ComboBox.Add Item “Option 1”
ComboBox1.Add Item “Option 2”
ComboBox1.Add Item “Option 3”
Conectando caixas de combinação com células no Excel
Para salvar o valor selecionado no Combo Box em uma célula específica, execute as seguintes etapas:
- Clique com o botão direito do mouse em Combo Box e selecione Properties.
- Localize a propriedade LinkedCell e insira o endereço da célula (por exemplo, D3).
- Agora, sempre que o usuário selecionar um item no Combo Box, esse valor aparecerá na célula D3.
Como alternativa, use o seguinte código VBA para salvar o valor da opção na célula:
Range(“D3”).Value ComboBox1.Value
4. Caixa de seleção
Check Box é um controle que permite ao usuário selecionar a opção Ya/Tidak ou True/False. Isso é útil para entradas binárias, como confirmação de consentimento, seleção de recursos ou ativação/desativação de uma função em um formulário.
Usando a caixa de seleção para salvar valores verdadeiros/falsos
Para adicionar um Check Box no Excel VBA, siga estas etapas:
- Abra a guia Developer no Excel.
- Clique em Insert > Check Box (ActiveX Controls).
- Clique e arraste para colocar o Check Box na planilha.
- Clique com o botão direito do mouse em Check Box > Properties.
Exemplo de código VBA para conectar uma caixa de seleção a uma célula
Para Check Box armazenar valores em células com base em seu status, use o seguinte código:
If CheckBox1.Value = True Then
Range(“D2”).Value 1
Else
Range(“D2”).Value = 0
End If
Este código preencherá D2 células com 1 se o Check Box estiver marcado e 0 se não estiver marcado.
Para fazer com que essa função seja executada automaticamente quando o usuário clicar em Check Box, use event Change dentro do VBA Editor: