Alguém possui um exemplo de filtro de intervalo de datas Listbox? Tem um formulário que possui filtros de outros dados, agora preciso colocar filtro de intervado de data como por exemplo: DataIni: 01/08/2018 DataFim: 31/08/2018
Coloquei em anexo um exemplo (com exemplo fica mais fácil entender), onde no Form quero digitar dataini e datafim (por exemplo quero um relatorio que seja do dia 01/05/17 a 03/05/17....
Para o Listview eu utilizo o código abaixo.... agora preciso algo no Listbox
Sub filtroDtIniDtaFimvcto()
Dim Tmp As Long
Dim i As Long
Dim sDtIni As Date
Dim sDtFim As Date
On Error GoTo Erro
Tmp = FrmDadosPesq.ListView1.ListItems.Count
If txtdatainiVcto = "" Then
txtdatainiVcto.SetFocus
Exit Sub
ElseIf txtdatafinxVcto = "" Then
txtdatafinxVcto.SetFocus
Exit Sub
End If
sDtIni = txtdatainiVcto.Value
sDtFim = txtdatafinxVcto.Value
For i = 1 To Tmp
With ListView1
If .ListItems(i).SubItems(9) = "" Then
FrmDadosPesq.ListView1.ListItems.Remove i
i = i - 1
Tmp = Tmp - 1
If i = Tmp Then Exit For
Tmp = FrmDadosPesq.ListView1.ListItems.Count
ElseIf .ListItems(i).SubItems(9) < sDtIni Then
FrmDadosPesq.ListView1.ListItems.Remove i
i = i - 1
Tmp = Tmp - 1
If i = Tmp Then Exit For
Tmp = FrmDadosPesq.ListView1.ListItems.Count
ElseIf .ListItems(i).SubItems(9) > sDtFim Then
FrmDadosPesq.ListView1.ListItems.Remove i
i = i - 1
Tmp = Tmp - 1
If i = Tmp Then Exit For
Tmp = FrmDadosPesq.ListView1.ListItems.Count
ElseIf .ListItems(i).SubItems(9) = sDtFim Then
Tmp = Tmp ' 1
If i = Tmp Then Exit For
Tmp = FrmDadosPesq.ListView1.ListItems.Count
End If
End With
Next
Exit Sub
Erro:
txtdatafinxVcto.SetFocus
End Sub
Postado : 31/08/2018 12:13 pm