@dunguinha aproveitando a rotina do colega Anderson, modifiquei para ser efetuado a pesquisa sem utilizar o Filtro, com essa você não precisa alterar os dados da coluna 5, apesar que eu acho importante pois poderá te causar problemas com algum outro tipo de referencia as datas mais tarde, e mesmo alterando as datas essa rotina tambem funcionará. Adicione um Segundo Botão (BotaoFiltro2) e faça os testes com as duas rotinas e veja qual lhe convem mais em questão de tempo.
Private Sub BotaoFiltro2_Click()
If IsDate(Me.txtDataInicial.Text) Then
If IsDate(Me.txtDataFinal.Text) Then
Dim dataInicial As Date
dataInicial = CDate(Me.txtDataInicial.Text)
Dim dataFinal As Date
dataFinal = CDate(Me.txtDataFinal.Text)
'Variáveis recebendo o valor dos campos
morador = Me.TextBox1.Value
'Limpando os dados da Listview antes de exibir a filtragem
ListView1.ListItems.Clear
'Adiciona os dados a listview
Sheets("Banco_Dados").Select
lin = 2
Do Until Sheets("Banco_Dados").Cells(lin, 1) = ""
If Sheets("Banco_Dados").Cells(lin, 5) >= CDate(txtDataInicial) And _
Sheets("Banco_Dados").Cells(lin, 5) <= CDate(txtDataFinal) Then
Set li = ListView1.ListItems.Add(Text:=Sheets("Banco_Dados").Cells(lin, 1).Value) 'Cod
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 1).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 2).Value 'Canal
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 3).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 4).Value 'Canal
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 5).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 6).Value 'Canal
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 7).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 8).Value 'Canal
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 9).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 10).Value 'Canal
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 11).Value 'morador
li.ListSubItems.Add Text:=Sheets("Banco_Dados").Cells(lin, 12).Value 'morador
End If
lin = lin + 1
Loop
Dim colunas As Integer
Dim linhas As Integer
Dim contador As Integer
Dim UserForm1
Dim x
On Error Resume Next
With UserForm1
colunas = ListView1.ColumnHeaders.Count
linhas = ListView1.ListItems.Count
For i = 1 To linhas
If ListView1.ListItems(i).ListSubItems(10) <> "" Then
ListView1.ListItems(i).ForeColor = RGB(199, 0, 0)
contador = contador + 1
For x = 1 To colunas - 1
ListView1.ListItems(i).ListSubItems(x).ForeColor = RGB(199, 0, 0)
Label7.Caption = contador & " Correspondências Retiradas"
Next
End If
Next
End With
Call Icones
End If
End If
End Sub
[]s
Mauro Coutinho
Postado : 10/10/2020 3:31 am