FILTRAR LISTVIEW

SNNIFFER 03/06/2010 13:24:19
#343803
Boa tarde,

Preciso fazer uma consulta no listview, usando um textbox, alguem saberia como?


vlw
MARCELOFAZAN 03/06/2010 13:35:24
#343804
Seria Algo assim


Dim criterio As String

Private Sub CmbCriterio_Click()

Select Case CmbCriterio.ListIndex
Case 0
TxtCriterio.Visible = False

Case 1, 2, 3 [ô] o tanto q precisar de campos
TxtCriterio.Visible = True

TxtCriterio.SetFocus
End Select

TxtCriterio.Text = [Ô][Ô]


End Sub

Private Sub CmdBuscar_Click()
Dim Sql As String, filtro As String
Dim rs As New ADODB.Recordset


Select Case CmbCriterio.ListIndex
Case 0
filtro = [Ô][Ô]
Case 1
filtro = [Ô]where Data = [ô][Ô] & TxtCriterio.Text & [Ô][ô][Ô]
Case 2
filtro = [Ô]where nome like [ô]%[Ô] & TxtCriterio.Text & [Ô]%[ô][Ô]
Case 3
filtro = [Ô]where Hora = [ô][Ô] & TxtCriterio.Text & [Ô][ô][Ô]

End Select

Sql = [Ô] Select * from frequencia [Ô] & filtro
rs.Open Sql, conexao

LsvBusca.ListItems.Clear

Do While Not rs.EOF
Set Item = LsvBusca.ListItems.Add(, , rs([Ô]id[Ô]))
Item.SubItems(1) = IIf(IsNull(rs([Ô]data[Ô])) = True, [Ô][Ô], rs([Ô]data[Ô]))
[ô] Item.SubItems(1) = [Ô][Ô] & rs([Ô]Data[Ô])
Item.SubItems(2) = [Ô][Ô] & rs([Ô]NOME[Ô])
Item.SubItems(3) = IIf(IsNull(rs([Ô]hora[Ô])) = True, [Ô][Ô], rs([Ô]hora[Ô]))
rs.MoveNext

Loop
End Sub

Private Sub CmdSair_Click()
Unload Me
End Sub


Private Sub Form_Load()
CmbCriterio.AddItem [Ô]Todos[Ô] [ô]0
CmbCriterio.AddItem [Ô]Data[Ô] [ô]1
CmbCriterio.AddItem [Ô]nome[Ô] [ô]2
CmbCriterio.AddItem [Ô]hora[Ô] [ô]3


Abraços
Marcelo Fazan
Tópico encerrado , respostas não são mais permitidas