Problema que encontrei nele, se eu for filtrar por número ele não encontra, por texto ele encontra normalmente.
Segue
Código: Selecionar todos
[b]'1ª opção[/b]
Sub FiltroListView()
Dim lastRow As Long
Dim lastResultRow As Long
Dim X As Long
' Verifica qual a ultima célula preenchida
lastRow = Plan1.Cells(Rows.Count, 1).End(xlUp).Row
lastResultRow = 2 'linha resultado
' Ciclo em todas as linhas
For X = 2 To lastRow '1 Linha dados pequisa
' verifica se o valor é igual ao da pesquisa
If Plan1.Cells(X, 2).Value = Me.ComboBox_FNome.Value _
Or Plan1.Cells(X, 4).Value = Me.ComboBox_FTipos.Value Or _
Plan1.Cells(X, 3).Value = ComboBox_FRegistros Then ' coluna pequisa
' Copia os valores
ListView1.ListItems.Add 1, , Plan1.Cells(X, 1).Value
ListView1.ListItems(1).ListSubItems.Add 1, , Plan1.Cells(X, "b").Value
ListView1.ListItems(1).ListSubItems.Add 2, , Plan1.Cells(X, "c").Value
ListView1.ListItems(1).ListSubItems.Add 3, , Plan1.Cells(X, "d").Value
ListView1.ListItems(1).ListSubItems.Add 4, , Plan1.Cells(X, "e").Value
ListView1.ListItems(1).ListSubItems.Add 5, , Plan1.Cells(X, "f").Value
ListView1.ListItems(1).ListSubItems.Add 6, , Plan1.Cells(X, "g").Value
ListView1.ListItems(1).ListSubItems.Add 7, , Plan1.Cells(X, "h").Value
ListView1.ListItems(1).ListSubItems.Add 8, , Plan1.Cells(X, "i").Value
ListView1.ListItems(1).ListSubItems.Add 9, , Plan1.Cells(X, "j").Value
ListView1.ListItems(1).ListSubItems.Add 10, , Plan1.Cells(X, "k").Value
'lastResultRow = lastResultRow + 1
End If
Next
End Sub
Segue
Código: Selecionar todos
[b]'2ª opção[/b]
Sub FiltroListView()
Dim lastRow As Long
Dim lastResultRow As Long
Dim X As Long
Dim c As Range
With Worksheets("Sistema").Range("C:C")
Set c = .Find(ComboBox_FRegistros.Value, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious)
If Not c Is Nothing Then
' Copia os valores
ListView1.ListItems.Add 1, , c.Offset(0, -2).Value
ListView1.ListItems(1).ListSubItems.Add 1, , c.Offset(0, -1).Value
ListView1.ListItems(1).ListSubItems.Add 2, , c.Offset(0, 0).Value
ListView1.ListItems(1).ListSubItems.Add 3, , c.Offset(0, 1).Value
ListView1.ListItems(1).ListSubItems.Add 4, , c.Offset(0, 2).Value
ListView1.ListItems(1).ListSubItems.Add 5, , c.Offset(0, 3).Value
ListView1.ListItems(1).ListSubItems.Add 6, , c.Offset(0, 4).Value
ListView1.ListItems(1).ListSubItems.Add 7, , c.Offset(0, 5).Value
ListView1.ListItems(1).ListSubItems.Add 8, , c.Offset(0, 6).Value
ListView1.ListItems(1).ListSubItems.Add 9, , c.Offset(0, 7).Value
ListView1.ListItems(1).ListSubItems.Add 10, , c.Offset(0, 8).Value
'lastResultRow = lastResultRow + 1
End If
End With
End Sub
Aguardo a colaboração de todos.
Abs.