Notifications
Clear all

Ajuda no Auto.Filter

7 Posts
4 Usuários
2 Reactions
1,106 Visualizações
(@wiilcorrea)
Posts: 0
New Member
Topic starter
 

Meus caros, bom dia.

 

Preciso de ajuda na formula abaixo, para um filtro através de uma text box. A formula abaixo só filtra exatamente o valor (numero) que está escrito, porém eu gostaria que filtrassem todos os valores que contem o numero digitado (o padrão de filtro manual do excel). Ou seja, ao digitar 1, eu filtraria os valores 100, 101, etc. Porém eu só filtro estes valores se eu digitar exatamente a mesma coisa. 

 

Segue linha do código que estou usando:

 

Private Sub Valor_Change()
  If Valor.Text <> "" Then
    Selection.AutoFilter Field:=8, Criteria1:="=" & Valor.Text
  Else
    Selection.AutoFilter Field:=8
  End If
End Sub

 

 
Postado : 21/07/2022 10:08 am
(@edsonbr)
Posts: 0
New Member
 

Faça uma tentativa usando coringas concatenados ao critério, @wiilcorrea (um antes e um depois do Valor.Text):

, Criteria1:="=*" & Valor.Text & "*"
 
Postado : 21/07/2022 1:50 pm
(@teleguiado)
Posts: 0
New Member
 

@willcorrea Tenho uma planilha com o mesmo código somente diferente do seu essa parte e assim funciona como você explicou

, Criteria1:="=" & Valor.Text &  + "*"
 
Postado : 22/07/2022 9:56 am
(@wiilcorrea)
Posts: 0
New Member
Topic starter
 

Pessoal, boa tarde.

Obrigado pelo retorno, porém não funcionou.

Estou anexando a planilha aqui.

 
Postado : 26/07/2022 3:00 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

Experimente:

Private Sub Valor_Change()
Dim c As Range, LR As Long
LR = [A:A].Find("*", , xlFormulas, , xlRows, xlPrevious).Row
Application.ScreenUpdating = False
Rows("5:" & LR).Hidden = False
If Valor.Text <> "" Then
For Each c In Range("A5:A" & LR)
Rows(c.Row).Hidden = Not Int(c.Text) Like "*" & Valor.Text & "*"
Next c
End If
End Sub
 
Postado : 26/07/2022 5:40 pm
teleguiado reacted
(@teleguiado)
Posts: 0
New Member
 

@osvaldomp Sabe dizer porque o código anterior meu e do Edson não funcionou?
Tenho uma outra planilha com o mesmo código e funciona.

 
Postado : 27/07/2022 12:50 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

@teleguiado
O que ele está tentando fazer é aplicar o Auto Filtro com critério equivalente a "contém".
No entanto, esse critério não é disponível no Excel/VBA para ser aplicado em dados numéricos.

Então a expressão ~~~> "*" & critério & "*" funciona somente para dados do tipo texto/string.

 
Postado : 27/07/2022 8:22 pm
teleguiado reacted