Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Listbox em cascata (Resolvido )
Listbox em cascata (Resolvido )
Bom dia, estou com uma dúvida que não encontrei no fórum.
Tenho uma lista de ramais aqui na empresa e quero fazer um formulario para pesquisa dos número, porém quero 3 listbox, na primeira, seleciona a unidade, na segunda irá aparecer somente os setores desta unidade, e quando seleciono o setor na terceira deverá aparecer somente as pessoas que trabalham neste setor. como faço isso?
Planilha pode ser baixada aqui: http://www.brdelorean.com/blogando/wp-c ... CIEEPR.xls
Obrigado.
Leandro Souza
Tenho uma lista de ramais aqui na empresa e quero fazer um formulario para pesquisa dos número, porém quero 3 listbox, na primeira, seleciona a unidade, na segunda irá aparecer somente os setores desta unidade, e quando seleciono o setor na terceira deverá aparecer somente as pessoas que trabalham neste setor. como faço isso?
Planilha pode ser baixada aqui: http://www.brdelorean.com/blogando/wp-c ... CIEEPR.xls
Obrigado.
Leandro Souza
Editado pela última vez por veiobilly em Qua Out 20, 2010 10:25 am, em um total de 2 vezes.
Re: Listbox em cascata
Leandro,
É mais ou menos isso?
http://www.tomasvasquez.com.br/blog/mic ... encadeados
No caso, troque o ComboBox pelo ListBox. Funciona bem.
Abraços
É mais ou menos isso?
http://www.tomasvasquez.com.br/blog/mic ... encadeados
No caso, troque o ComboBox pelo ListBox. Funciona bem.
Abraços
Re: Listbox em cascata (Resolvido parcialmente)
Perfeito Tomás, só que gerou um problema...
Como nem todas as linhas das colunas estão preenchidas, quando eu seleciono uma unidade por exemplo quando aparece uma linha da coluna setor, o loop para deixando a resposta incompleta, como faço para contornar isso? (Ok, resolvi criando uma categoria para as linhas em branco) OK
Outra questão, eu gostaria que a resposta do segundo list box chegasse em ordem alfabética para ficar fácil a procura para o terceiro list box...
Edit: Outra questão...
Abraços
Leandro Souza
Como nem todas as linhas das colunas estão preenchidas, quando eu seleciono uma unidade por exemplo quando aparece uma linha da coluna setor, o loop para deixando a resposta incompleta, como faço para contornar isso? (Ok, resolvi criando uma categoria para as linhas em branco) OK
Outra questão, eu gostaria que a resposta do segundo list box chegasse em ordem alfabética para ficar fácil a procura para o terceiro list box...
Edit: Outra questão...
Abraços
Leandro Souza
Editado pela última vez por veiobilly em Ter Out 19, 2010 2:42 pm, em um total de 1 vez.
Re: Listbox em cascata (Resolvido parcialmente)
Ok, a primeira questão que coloquei já resolvi apenas preenchi as células em branco com uma categoria específica.
Na verdade o que quero agora é que o combobox onde vem a resposta com a filtragem do primeiro, mostre os dados em ordem alfabética, é possível isso?
Abraços.
Na verdade o que quero agora é que o combobox onde vem a resposta com a filtragem do primeiro, mostre os dados em ordem alfabética, é possível isso?
Abraços.
Re: Listbox em cascata (Resolvido parcialmente)
Colega,
Veja se isso ajuda:
Referência:
http://www.ozgrid.com/forum/showthread. ... 509&page=1
Veja se isso ajuda:
Código: Selecionar todos
Sub SortListBox(oLb As MSForms.ListBox, sCol As Integer, sType As Integer, sDir As Integer)
Dim vaItems As Variant
Dim i As Long, j As Long
Dim c As Integer
Dim vTemp As Variant
'Put the items in a variant array
vaItems = oLb.List
'Sort the Array Alphabetically(1)
If sType = 1 Then
For i = LBound(vaItems, 1) To UBound(vaItems, 1) - 1
For j = i + 1 To UBound(vaItems, 1)
'Sort Ascending (1)
If sDir = 1 Then
If vaItems(i, sCol) > vaItems(j, sCol) Then
For c = 0 To oLb.ColumnCount - 1 'Allows sorting of multi-column ListBoxes
vTemp = vaItems(i, c)
vaItems(i, c) = vaItems(j, c)
vaItems(j, c) = vTemp
Next c
End If
'Sort Descending (2)
ElseIf sDir = 2 Then
If vaItems(i, sCol) < vaItems(j, sCol) Then
For c = 0 To oLb.ColumnCount - 1 'Allows sorting of multi-column ListBoxes
vTemp = vaItems(i, c)
vaItems(i, c) = vaItems(j, c)
vaItems(j, c) = vTemp
Next c
End If
End If
Next j
Next i
'Sort the Array Numerically(2)
'(Substitute CInt with another conversion type (CLng, CDec, etc.) depending on type of numbers in the column)
ElseIf sType = 2 Then
For i = LBound(vaItems, 1) To UBound(vaItems, 1) - 1
For j = i + 1 To UBound(vaItems, 1)
'Sort Ascending (1)
If sDir = 1 Then
If CInt(vaItems(i, sCol)) > CInt(vaItems(j, sCol)) Then
For c = 0 To oLb.ColumnCount - 1 'Allows sorting of multi-column ListBoxes
vTemp = vaItems(i, c)
vaItems(i, c) = vaItems(j, c)
vaItems(j, c) = vTemp
Next c
End If
'Sort Descending (2)
ElseIf sDir = 2 Then
If CInt(vaItems(i, sCol)) < CInt(vaItems(j, sCol)) Then
For c = 0 To oLb.ColumnCount - 1 'Allows sorting of multi-column ListBoxes
vTemp = vaItems(i, c)
vaItems(i, c) = vaItems(j, c)
vaItems(j, c) = vTemp
Next c
End If
End If
Next j
Next i
End If
'Set the list to the array
oLb.List = vaItems
End Sub
http://www.ozgrid.com/forum/showthread. ... 509&page=1
- Mauro Coutinho
- Jedi
- Mensagens: 1561
- Registrado em: Sáb Mar 13, 2010 8:10 pm
- Localização: São José dos Pinhais - Pr
Re: Listbox em cascata (Resolvido parcialmente)
Leandro, apesar de ja estar praticamente solucionado sua solicitação, de uma olhada no Tópico abaixo onde postei um modelo que faz o que pretende tanto em combo como em listbox, é só desconsiderar a função split e adaptar as demais.
Modelo ListBox/ComboBox Dependentes com Função SPLIT
viewtopic.php?f=6&t=466&p=2849&hilit=split#p2849
Espero que ajude.
abraços
Modelo ListBox/ComboBox Dependentes com Função SPLIT
viewtopic.php?f=6&t=466&p=2849&hilit=split#p2849
Espero que ajude.
abraços