Notifications
Clear all

Combobox VBA

8 Posts
3 Usuários
0 Reactions
1,903 Visualizações
(@vitors)
Posts: 31
Trusted Member
Topic starter
 

Boas!
Criei uma combobox BVA da célula B4 à I4 de cada uma das planilhas. A ideia é ao clicar no aluno pretendido, mudar para a planilha do referido aluno e que o seu nome apareça na referida combobox. Até aqui tudo está a funcionar bem com a excepção que na combobox não aparece o aluno selecionado mas sim outro aluno ou então aparece em branco.

Alguém pode ajudar?

Favor ler as Regras, os anexos teem de estarem compactados, compacte seu arquivo e post novamente.

 
Postado : 25/02/2014 10:59 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

vitors,

Boa Noite!

Para mim, sua explicação ficou muito confusa. Além disso, seu arquivo foi apagado pelos moderadores em razão de ter sido colocado em desacordo com as regras do fórum. Compacte seu arquivo com o ZIP (por menor que o mesmo seja) e anexe novamente aqui. Explique melhor o que deseja para que possamos lhe ajudar.

 
Postado : 25/02/2014 6:27 pm
(@vitors)
Posts: 31
Trusted Member
Topic starter
 

Agradeço desde já a disponibilidade para me ajudar.

Vou tentar explicar melhor o problema.
Tenho 5 planilhas "Avaliação1", "Avaliação2", "Avaliação3", "Avaliação4" e "Avaliação5" e todas elas terão a mesma função (navegar entre as planilhas através de uma combobox).
Nas 5 planilhas, uni e centrei da célula "B4" a "I4" e criei uma combobox list.
Coloquei o seguinte código VBA, que me foi fornecido através deste fórum:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Count > 1 Then Exit Sub
If Target.Address <> "$B$4" Or Target.Value = "" Then Exit Sub
Select Case Target.Value
Case Range("M3").Value
Sheets("Avaliação1").Select
Case Range("M4").Value
Sheets("Avaliação2").Select
Case Range("M5").Value
Sheets("Avaliação3").Select
Case Range("M6").Value
Sheets("Avaliação4").Select
Case Range("M7").Value
Sheets("Avaliação5").Select
End Select
'Sheets(CStr([B4])).Activate
Application.EnableEvents = True
End Sub
Sub teste()
Application.EnableEvents = True

End Sub

Até aqui funciona bem, ou seja, ao selecionar o aluno pretendido, paço para a planilha correspondente, mas o problema é que na combobox não aparece o nome do aluno. Exemplo: Estou na plan "Avaliação1" e na combobox seleciono o aluno Carlos António. Passo para a plan correspondente ao aluno Carlos António "Avaliação3" mas na combobox, desta nova plan, aparece a branco ou então com o nome de outro aluno.

 
Postado : 27/02/2014 3:28 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

vitors,

Bem... achei muito complexo fazer com validação de dados. Preferi utilizar código VBA.

Desse modo, veja se assim lhe atende.

 
Postado : 27/02/2014 7:05 am
(@vitors)
Posts: 31
Trusted Member
Topic starter
 

Wagner,

Quando eu abro o ficheiro ele dá erro.
vai em anexo os erros.

 
Postado : 27/02/2014 7:31 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

vitors,

Boa Tarde!

Esses erros, pelo que pude perceber, é porque você está utilizando a versão do Excel 2010 ou 2013. Eu utilizei a versão 2007 do Excel. Desse modo, creio que se trata de incompatibilidade do VBA entre as versões. Aqui, na minha máquina está funcionando muito bem.

Não tenho como lhe ajudar, pois ainda não trabalho com o Excel em versão mais atual.

 
Postado : 27/02/2014 1:32 pm
(@vitors)
Posts: 31
Trusted Member
Topic starter
 

Obrigado Wagner pela ajuda.

 
Postado : 28/02/2014 3:05 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Caso seja necessário reabrir o tópico, o autor poderá enviar uma MP para um dos moderadores solicitando o desbloqueio.

 
Postado : 28/02/2014 10:32 am