Re : j'aurais besoin d'aide SVP
Merci JP 14 le code fonctionne trés bien par contre peut on modifier pour que je puisse rénialiser le listview quand j'efface
une lettre
je m'explique
exemple : je tape A le filtre me trouve 55 client , j'ajoute B (on a AB) il me trouve 3 . il faut que si j'efface B le listview m'affiche les 55 premiers et j'efface encore le A il m'affiche toute la base. autrement si j'annule mon filtre le list view se réinisialise automatiquement . j'ai trouvé un code qui fonctionne sur un autre fichier mais pas sur le mien .
Voici le code :
Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
'Variables locales
Dim iCnt As Integer
Dim iRnd As Integer
Dim oRng As Excel.Range
Dim oItem As ListItem
'Initialisation de la ListView
ListView1.ColumnHeaders.Clear
ListView1.FullRowSelect = True
ListView1.ListItems.Clear
ListView1.View = lvwReport
'Remplissage de la ListView
Set oRng = Feuil1.Cells(1, 1)
Do Until oRng.Offset(1, 0).Value = ""
'-- En-têtes
If oRng.Row = 1 Then
For iCnt = 0 To 23 '-- 14 colonnes
ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
Next iCnt
'-- Données
Else
iRnd = Int((4 * Rnd) + 1)
If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then
Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
For iCnt = 1 To 23 '-- 14 colonnes
oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
Next iCnt
End If
End If
Set oRng = oRng.Offset(1, 0)
Loop
ListView1.ListItems(1).Selected = False
Set ListView1.SelectedItem = Nothing
ListView1.Gridlines = True
End Sub
Private Sub TextBox1_Change()
Call LVW_Fill(Trim$(TextBox1.Text), ComboBox1.ListIndex)
Label28 = Me.ListView1.ListItems.Count & " Abonné(s) "
End Sub
Merci pour votre aide