/ / Caixa de listagem VBA do Excel

Caixa de listagem VBA do Excel

Uma caixa de listagem é uma lista de onde um usuário pode selecionar um item. Para criar um caixa de listagem em Excel VBA, execute os seguintes passos.

1. Na guia Desenvolvedor, clique em Inserir.

2. No grupo de controles ActiveX, clique em List Box.

Crie uma caixa de listagem no Excel VBA

3. Arraste uma caixa de listagem na sua planilha.

Arraste uma caixa de listagem

Nota: Você pode alterar o nome de um controle clicando com o botão direito do mouse no controle (verifique se Modo de Design está selecionado) e, em seguida, clicando em Propriedades. Por enquanto, deixaremos ListBox1 como o nome da caixa de listagem.

Crie um Evento Aberto da Pasta de Trabalho. O código adicionado ao Evento Aberto da Pasta de Trabalho será executado pelo Excel VBA quando você abrir a pasta de trabalho.

4. Abra o Editor do Visual Basic.

5. Clique duas vezes em This Workbook no Project Explorer.

6. Selecione a pasta de trabalho na lista suspensa à esquerda e escolha Abrir na lista suspensa à direita.

Evento Aberto da Pasta de Trabalho no Excel VBA

7. Para adicionar itens à caixa de listagem, adicione as seguintes linhas de código ao Evento Aberto da Pasta de Trabalho:

With Sheet1.ListBox1
    .AddItem "Paris"
    .AddItem "New York"
    .AddItem "London"
End With

Nota: use Sheet2 se sua caixa de listagem estiver localizada na segunda planilha, Sheet3 se sua caixa de listagem estiver localizada na terceira planilha, etc. Se você usar essas linhas de código fora do evento Open Workbook, talvez queira adicionar a seguinte linha de código antes linhas de código. Esta linha de código limpa a caixa de listagem. Dessa forma, seus itens não serão adicionados várias vezes se você executar seu código mais de uma vez.

ListBox1.Clear

8. Para vincular essa caixa de listagem a uma célula, clique com o botão direito do mouse na caixa de listagem (verifique se o modo de design está selecionado) e clique em Propriedades. Preencha D3 para LinkedCell.

LinkedCell

Nota: veja também a propriedade ListFillRange para preencher uma caixa de listagem com um intervalo de células.

9. Salve, feche e reabra o arquivo do Excel.

Resultado:

List Box

Embora em algumas situações possa ser útil colocar diretamente uma caixa de listagem em sua planilha, uma caixa de listagem é particularmente útil quando colocada em uma forma de usuário.

Leia também: