Notifications
Clear all

combobox dependente

8 Posts
3 Usuários
0 Reactions
1,791 Visualizações
(@juliowd)
Posts: 149
Estimable Member
Topic starter
 

Olá. Já pesquisei milhares de posts no fórum. Mas meu problema é bem específico.
Estou usando uma lista de estados e cidades, apenas para exemplificar. Peguei do link https://www.youtube.com/watch?v=ReSKQ8o-tQY
e aprendi este código:


Private Sub cmb_UF_Click()
cmb_cidade.Clear
estado = cmb_UF
linha = 2
Do Until Sheets("cidades").Cells(linha, 1) = ""
If Sheets("cidades").Cells(linha, 2) = estado Then
cmb_cidade.AddItem Sheets("cidades").Cells(linha, 3)
linha = linha + 1
Else
linha = linha + 1
End If
Loop
End Sub

Private Sub UserForm_Initialize()
linha = 2
Do Until Sheets("estados").Cells(linha, 1) = ""
cmb_UF.AddItem Sheets("estados").Cells(linha, 1)
linha = linha + 1
Loop
End Sub

Mas na minha planilha não vou usar userform.
Então fiz uma adaptação:

Private Sub cmb_UF_Click()
cmb_cidade.Clear
estado = cmb_UF
linha = 2
Do Until Sheets("cidades").Cells(linha, 1) = ""
If Sheets("cidades").Cells(linha, 2) = estado Then
cmb_cidade.AddItem Sheets("cidades").Cells(linha, 3)
linha = linha + 1
Else
linha = linha + 1
End If
Loop
End Sub


Private Sub Worksheet_Activate()
linha = 2
Do Until Sheets("estados").Cells(linha, 1) = ""
cmb_UF.AddItem Sheets("estados").Cells(linha, 1)
linha = linha + 1
Loop
End Sub

Só que na CATEGORIA ela repete os estados e fica errado.
O que tenho que fazer pra aparecer a lista de estados certinha?
Anexo a planilha.
Obrigado!

 
Postado : 23/04/2015 1:24 pm
(@juliowd)
Posts: 149
Estimable Member
Topic starter
 

se quando vocês baixarem a CATEGORIA estiver ok, tente entrar e sair da aba umas duas vezes. Aí vai dar o problema.

 
Postado : 23/04/2015 1:25 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Vamos ver se mais alguém pode nos ajudar, pois eu ainda não entendi...

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 23/04/2015 1:31 pm
(@juliowd)
Posts: 149
Estimable Member
Topic starter
 

Faltou vírgula... mas assim...
é que quando abre o arquivo e acessa a Plan1, lá estão as duas oções de caixa de combinação. A de cima é CATEGORIA. E a de baixo é SUB-CATEGORIA.
A CATEGORIA está ok na primeira vez que acessa a aba Plan1. Mas quando sai desta aba e volta a acessá-la, já se perdeu: a lista ficou doida.

E aí tem o código que fiz, mas nao consegui adaptar para utilização SEM userfor (ela foi criada para funcionar em userform)

 
Postado : 23/04/2015 1:44 pm
(@paulo_001)
Posts: 149
Estimable Member
 

Precisa ser por VBA?

 
Postado : 23/04/2015 2:12 pm
(@juliowd)
Posts: 149
Estimable Member
Topic starter
 

Sim, Paulo.

 
Postado : 23/04/2015 2:14 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Julio, é só adicionar a instrução para limpar o controle qdo ativar a aba novamente, adicione :

Private Sub Worksheet_Activate()

cmb_UF.Clear

......
............

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 23/04/2015 5:09 pm
(@juliowd)
Posts: 149
Estimable Member
Topic starter
 

Cara, genial!!!
Muito obrigado!!!!!!!
Sem palavras!!!
Um abraço!

 
Postado : 24/04/2015 8:19 am