Usuário com melhor resposta
Validação de Dados - Inteligente VBA

Pergunta
-
Caros,
gostaria de saber se é possível criar uma Validação de Dados (lista), onde ao digitar a primeira letra ou até uma palavra ele automaticamente filtre somente as opções para seleção? Pode sem em VBA.
Grato
- Movido Hezequias VasconcelosModerator quinta-feira, 14 de novembro de 2013 17:12 Questão relacionada ao produto VBA
Respostas
-
Crie um formulário com uma caixa de texto chamada TextBox1 and ListBox1 e insira o código a seguir num formulário:
Private Sub TextBox1_Change() Dim wks As Excel.Worksheet Dim lngLast As Long Dim lng As Long Dim varAll As Variant Dim var As Variant Me.ListBox1.Clear With ThisWorkbook.Worksheets("Plan1") lngLast = .Cells(.Rows.Count, "A").End(xlUp).Row var = .Range("A2:A" & lngLast) End With For lng = LBound(var) To UBound(var) If var(lng, 1) Like "*" & Me.TextBox1 & "*" Then Me.ListBox1.AddItem var(lng, 1) End If Next lng End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Sugerido como Resposta Jean Carlos Galhardi quarta-feira, 20 de novembro de 2013 02:14
- Marcado como Resposta Felipe Costa GualbertoMVP, Moderator sábado, 7 de junho de 2014 19:11
Todas as Respostas
-
Olá, boa tarde.
Estou migrando sua dúvida para o fórum especializado em VBA, neste local você encontrará ajuda mais especializada sobre o assunto.
Se precisar novamente de ajuda sobre o mesmo assunto post sua dúvida no endereço do fórum:
http://social.msdn.microsoft.com/Forums/pt-br/home?forum=vbapt
Obrigado por contactar o fórum Microsoft Technet!
-
Crie um formulário com uma caixa de texto chamada TextBox1 and ListBox1 e insira o código a seguir num formulário:
Private Sub TextBox1_Change() Dim wks As Excel.Worksheet Dim lngLast As Long Dim lng As Long Dim varAll As Variant Dim var As Variant Me.ListBox1.Clear With ThisWorkbook.Worksheets("Plan1") lngLast = .Cells(.Rows.Count, "A").End(xlUp).Row var = .Range("A2:A" & lngLast) End With For lng = LBound(var) To UBound(var) If var(lng, 1) Like "*" & Me.TextBox1 & "*" Then Me.ListBox1.AddItem var(lng, 1) End If Next lng End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Sugerido como Resposta Jean Carlos Galhardi quarta-feira, 20 de novembro de 2013 02:14
- Marcado como Resposta Felipe Costa GualbertoMVP, Moderator sábado, 7 de junho de 2014 19:11