Este material trás os conceitos básicos para você começar a trabalhar com caxas de listagens no Excel.
Para ter acesso ao conteúdo completo visite meu blog =D
http://excelparaestagiarios.com.br/avancado/como-utilizar-caixas-de-listagens-listbox/
2. Sempre que você quiser
listar um conjunto de
opções para que o
usuário final possa
realizar uma escolha.
Em geral caixas de
listagens são utilizadas
como fontes para
alimentar filtros ou inicial
rotinas de preenchimento
automático.
QUANDO UTILIZAR?
3. CÓDIGO DE ALIMENTAÇÃO
Private Sub Worksheet_Activate()
'Declarando variáveis
Dim Lin As Integer
'Limpando as listas
Ltb_Vendedor.Clear
Ltb_Categoria.Clear
'Determinando valor inicial de Lin
Lin = 2
'Loop de leitura dos vendedores
Do Until Sheets("Vendedores").Cells(Lin, "B").Value = Empty
Ltb_Vendedor.AddItem (Sheets("Vendedores").Cells(Lin, "B").Value)
Lin = Lin + 1
Loop
'Determinando valor inicial de Lin
Lin = 3
'Loop de leitura das categorias
Do Until Sheets("Promoções").Cells(Lin, "B").Value = Empty
Ltb_Categoria.AddItem (Sheets("Promoções").Cells(Lin, "B").Value)
Lin = Lin + 1
Loop
End Sub
4. CÓDIGO DE BUSCA E ESCRITA'Declarando Variáveis
Dim Lin1, Lin2 As Integer
'Definindo valores iniciais
Lin1 = 2
Lin2 = 4
‘Limpando dados antigos
Sheets("Relatório").Range("E4:K1048576").Value = Empty
'Loop de leitura da base
Do Until Sheets("Movimentação").Cells(Lin1, 1).Value = Empty
'Checa se o registro é do vendedor selecionado
If Sheets("Movimentação").Cells(Lin1, 4).Value = Ltb_Vendedor.Value And Sheets("Movimentação").Cells(Lin1, "F").Value =
Ltb_Categoria.Value Then
'Copiando os dados do vendedor
Sheets("Relatório").Cells(Lin2, "E").Value = Sheets("Movimentação").Cells(Lin1, "A").Value 'Registro
Sheets("Relatório").Cells(Lin2, "F").Value = Sheets("Movimentação").Cells(Lin1, "B").Value 'Data
Sheets("Relatório").Cells(Lin2, "G").Value = Sheets("Movimentação").Cells(Lin1, "E").Value 'Código
Sheets("Relatório").Cells(Lin2, "H").Value = Sheets("Movimentação").Cells(Lin1, "F").Value 'Categoria
Sheets("Relatório").Cells(Lin2, "I").Value = Sheets("Movimentação").Cells(Lin1, "G").Value 'Nome
Sheets("Relatório").Cells(Lin2, "J").Value = Sheets("Movimentação").Cells(Lin1, "H").Value 'Quantidade
Sheets("Relatório").Cells(Lin2, "K").Value = Sheets("Movimentação").Cells(Lin1, "I").Value 'Pagamento
'Incremento de Lin2
Lin2 = Lin2 + 1
End If
'Incremento de Lin1
Lin1 = Lin1 + 1
Loop
End Sub