VBA List Box

A caixa de listagem no VBA é uma lista que é atribuída a uma variável e a lista tem várias entradas para seleção, na caixa de listagem podemos selecionar várias opções de uma vez, a caixa de listagem pode ser feita em um formulário de usuário no VBA do Excel selecionando a lista opção de caixa e desenhando-o no formulário do usuário para uma caixa de lista, temos um intervalo nomeado que tem certos valores fornecidos para selecionar em uma caixa de lista.

O que é a caixa de listagem no Excel VBA?

Uma caixa de listagem é uma lista de onde um usuário pode selecionar um item. A caixa de listagem no Excel VBA pode ser usada se você quiser exibir uma lista de valores que os usuários podem escolher.

Como criar uma caixa de listagem no Excel?

Para criar a caixa de listagem na planilha do Excel, siga estas etapas:

Primeiro, você precisa habilitar o Excel da guia Desenvolvedor visível na faixa de opções para que você possa acessar o VBA e os comandos de controle ActiveX. Para obter a guia Desenvolvedor , abra a caixa de diálogo Opções do Excel , clique em Personalizar Faixa de Opções no Excel e selecione a caixa de seleção Desenvolvedor.

  • Clique na Faixa de Opções do Excel, selecione a guia Desenvolvedor e, a seguir, clique em Inserir e, em seguida, clique no controle Caixa de Lista para inserir a nova caixa de lista na planilha excels.

  • Depois disso, desenhe um retângulo na planilha do Excel para criar a Caixa de Lista no Excel.

  • Ao selecionar o List Box no excel, clique na guia do desenvolvedor e selecione Propriedades. A janela Propriedades será aberta.

  • Na janela Propriedades, para a configuração Intervalo de preenchimento da lista, insira Dias - o intervalo nomeado com os dias da semana.

  • Clique na propriedade Multi Select e, na lista suspensa, selecione 1-fmMultiSelectMulti como mostrado na captura de tela abaixo.

  • Clique na propriedade Estilo de lista e, na lista suspensa, selecione 1-fmListStyleOption. Isso adiciona caixas de seleção à esquerda dos itens da lista, conforme mostrado na captura de tela abaixo.

  • Feche a janela Propriedades.

Você pode fechar o modo Design clicando no Modo Design.

Como criar uma caixa de listagem no Excel VBA?

Você pode considerar o seguinte exemplo para entender melhor a caixa de listagem do VBA:

Você pode baixar este modelo Excel de caixas de lista aqui - Modelo Excel de caixas de lista

Exemplo 1

Para vincular esta caixa de listagem a uma célula, clique com o botão direito na caixa de listagem (certifique-se de que o modo de design esteja selecionado) e clique em Propriedades. Preencha B17 para Linked Cell conforme mostrado na captura de tela abaixo.

Nome da lista de meses como Mês vá para propriedades e selecione Intervalo de preenchimento da lista como Mês.

 

Os dados serão alterados na célula da célula B17 quando você alterar sua escolha na caixa de listagem, conforme mostrado na captura de tela abaixo.

Exemplo 2 - Como criar uma caixa de listagem em um formulário de usuário?

  • Vá para a guia Desenvolvedor e clique em Visual Basic no código ou pressione Alt + F11.

  • Vá para o menu Inserir, clique em UserForm.

  • Arraste o controle da caixa de listagem no formulário de usuário da caixa de ferramentas.

  • Clique duas vezes em UserForm e selecione o evento Userform como mostrado na imagem abaixo.

  • Agora, adicione o seguinte código ao procedimento intermediário.

Sub UserForm_Initialize privado ()

ListBox1.AddItem “MBA”

ListBox1.AddItem “MCA”

ListBox1.AddItem “MSC”

ListBox1.AddItem “MECS”

ListBox1.AddItem “CA”

End Sub

 

  • Agora, pressione 'F5' para executar o código.

Exemplo # 3 - Como adicionar um controle de caixa de listagem dinâmica

Adicione um controle de caixa de lista dinâmica no formulário do usuário usando VBA

  • Adicione um botão de comando no formulário do usuário da caixa de ferramentas.

  • Clique com o botão direito no botão de comando, clique em propriedades

  • Altere a legenda do botão de comando para 'Create_Listbox'

  • Clique duas vezes no botão de comando
  • Agora, ele mostra o seguinte código.

Private Sub CommandButton1_Click ()

End Sub

  • Chame o procedimento abaixo chamado 'Add_Dynamic_Listbox' e encontre o procedimento abaixo para executar.

Sub Add_Dynamic_Listbox ()

'Adicionar caixa de listagem dinâmica e atribuí-la ao objeto' LstBx '

Definir LstBx = UserForm3.Controls.Add (“Forms.ListBox.1”)

'Posição da caixa de lista

LstBx.Left = 20

LstBx.Top = 10

End Sub

  • Agora, clique em F5 para executar a macro.
Como adicionar itens ao controle de caixa de listagem no VBA?

Sub-inserção privada _Items _To_LstBox ()

ListBox1.AddItem “Item 1”

ListBox1.AddItem “Item 2”

ListBox1.AddItem “Item 3”

ListBox1.AddItem “Item 4”

ListBox1.AddItem “Item 5”

End Sub

Como limpar itens do controle da caixa de listagem usando o VBA?

Sub Clr_LstBx ()

UserForm3.ListBox1.Clear

End Sub

Exemplo # 4

Suponha que temos dados de vendas e queremos os detalhes de vendas da interface gráfica do usuário selecionando a seleção de itens da caixa de listagem. Então, temos que mudar a célula selecionada do índice como link de célula e aplicar a fórmula VLOOKUP para buscar os detalhes de vendas, conforme mostrado nas imagens abaixo.

Coisas para lembrar sobre a caixa de listagem no Excel VBA

Uma caixa de listagem no Excel pode ser usada para selecionar vários itens dela.