Usuário com melhor resposta
Filtro contem em VBA com palavra ?

Pergunta
-
Prezados,
tem uma planilha e na coluna D existe varios valores de texto com nome de empresas. Preciso de uma rotina em VBA, quando eu digitar um determinado nome em uma msgbox, a mesma executasse o filtro na coluna D referente a esse nome.
Ex.: Eu digitar "Dias" ai executasse o filtro me retornando todos os campos que contem "Dias" no inicio, meio ou fim de uma frase, ou nome.
Att,
Estanislau
Att, Estanislau Frade msn: lauedele@hotmail.com email: estanislaufrade@yahoo.com.br estanislau.frade@vale.com
Respostas
-
Considere que seu cabeçalho começa na célula A1:
Sub Exemplo() Dim sTermo As String sTermo = InputBox("Digite aqui a expressão que deseja busca:") If Not ActiveSheet.AutoFilterMode Then Cells.AutoFilter End If On Error Resume Next ActiveSheet.ShowAllData On Error GoTo 0 Cells.AutoFilter _ Field:=4, _ Criteria1:="*" & sTermo & "*" End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta Estanislau Frade terça-feira, 10 de julho de 2012 14:04
Todas as Respostas
-
Você pode tentar aplicar o um auto filtro no campo da sua tabela.
Ex: Caso seu intervalo esteja no formato de tabela.
ActiveSheet.ListObjects("Tabela1").Range.AutoFilter Field:=4, Criteria1:= _
"=*" & RespostaDaMensagem & "*", Operator:=xlAndCaso esteja em lista apenas com o filtro:
ActiveSheet.Range("$A:$H").AutoFilter Field:=4, Criteria1:= _
"=*" & RespostaDaMensagem & "*", Operator:=xlAnd
David Brigido
- Editado David Brigido terça-feira, 3 de julho de 2012 18:22 complentação da resposta
-
Considere que seu cabeçalho começa na célula A1:
Sub Exemplo() Dim sTermo As String sTermo = InputBox("Digite aqui a expressão que deseja busca:") If Not ActiveSheet.AutoFilterMode Then Cells.AutoFilter End If On Error Resume Next ActiveSheet.ShowAllData On Error GoTo 0 Cells.AutoFilter _ Field:=4, _ Criteria1:="*" & sTermo & "*" End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta Estanislau Frade terça-feira, 10 de julho de 2012 14:04
-