Como retirar linhas em branco do listbox


#1

Bom dia! Tenho o seguinte codigo abaixo, de um filtro que é informado em três caixas de texto para o list box do meu form. So que ele esta puxando linhas vazias para o listbox que não deveria. O que era para apenas puxar os dados que estão no banco de dados. conforme o filtro. Se alguem poder me ajudar agradeço desde já.

Private Sub BtFiltrar_Click()

Application.ScreenUpdating = False
Application.EnableEvents = False
'valida os campos de data final e inicial
If TextBox1 = Empty Or TextBox2 = Empty Or CbComu = Empty Then

MsgBox “Veja se todos os campos dos filtros estão preenchidos!”, vbCritical, “Campos em Branco”

Exit Sub

Else

Dim linha As Integer
Dim linhalistbox As Integer
Dim Data As Date
Dim Inicio As Date
Dim Fim As Date
Dim aviso
Dim Comunidade As String
Dim CbComunidade As String
CbComunidade = Me.CbComu

'verifica erro na data inicial
On Error GoTo Erro1
Inicio = Me.TextBox1.Value

'verifica erro na data final
On Error GoTo Erro1
Fim = Me.TextBox2.Value

linhalistbox = 1
linha = 2

Me.Codigo_alt.Locked = False
Me.Data_alt.Locked = False
Me.Descri_Alt.Locked = False
Me.Vlr_Alt.Locked = False
Me.ComboBox1.Locked = False
Me.ComboBox2.Locked = False
Me.ComboBox3.Locked = False

Plan4.Visible = True
Plan4.Select
Me.ListBox1.Clear
With Plan4
'faça enquanto ‘linha’ for diferente de vazio
While .Cells(linha, 2).Value <> “”

Data = .Cells(linha, 2).Value

Comunidade = .Cells(linha, 7).Value

If Data >= Inicio And Data <= Fim And Comunidade = CbComunidade Then

With ListBox1
.AddItem
.List(0, 0) = “Código”
.List(0, 1) = “Data”
.List(0, 2) = “Descrição”
.List(0, 3) = “Valor”
.List(0, 4) = “Tipo”
.List(0, 5) = “Conta”
.List(0, 6) = “Comunidade”
End With

With ListBox1
.AddItem
.List(linhalistbox, 0) = Plan4.Cells(linha, 1)
.List(linhalistbox, 1) = Plan4.Cells(linha, 2)
.List(linhalistbox, 2) = Plan4.Cells(linha, 3)
.List(linhalistbox, 3) = Plan4.Cells(linha, 4) * “1,00”
.List(linhalistbox, 4) = Plan4.Cells(linha, 5)
.List(linhalistbox, 5) = Plan4.Cells(linha, 6)
.List(linhalistbox, 6) = Plan4.Cells(linha, 7)
.ColumnWidths = “40;60;240;40;60;160;120”
End With
linhalistbox = linhalistbox + 1

End If

linha = linha + 1

'while
Wend
'plan4
End With
Plan4.Visible = False
Call ContadorList
BtAlterar.Enabled = True
BtExcluir.Enabled = True

Exit Sub
End If

Erro1: If Err.Number > 0 Then

MsgBox “Favor informa dados validos”, vbInformation, “Atenção”
End If

Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub