Filtrage des données d'une Listbox

Bonjour,

je voudrais que vous m'aidiez à filtre les données d'une Listbox en fonction de Textbox "N_mag" et un combobox "cmb_suite".

Dim i As Integer
Dim ListCount1 As Integer
ListCount1 = ListBox2.ListCount - 1
If N_Mag <> "" Then
For i = ListCount1 To 0 Step -1
If InStr(1, ListBox2.List(i, 2), N_Mag) = 0 Or InStr(1, ListBox2.List(i, 1), cmb_suite.Value) = 0 Then
ListBox2.RemoveItem (i)
End If
Next i
End If

Ce code fonctionne parfaitement, mais il ne filtre pas les données exactes. Par exemple, si je cherche "55" dans N_Mag, il me trouve toutes les données qui contiennent "55", "552", "155", etc.

comment filtre n_mag avec une valeur exacte ?

Bonsoir Yomix,

Comme ceci, donc seul pour "55" qui a 2 caractères sera ressorti. Les autres ont plus de caractères.

Lg = len(N_mag)
For i = ListCount1 To 0 Step -1
If (InStr(1, ListBox2.List(i, 2), N_Mag) = 0 and len(ListBox2.List(i,2)) = Lg) Or ... faire de même avec l'autre condition... Then

Merci pour votre réponse, malheureusement cela n'a donné aucun résultat.

A nouveau,

Poste un fichier représentatif avec le code à modifier. Selon la charte du site.

merci pour votre temps
j'ai régler le problème

Dim i As Integer
Dim ListCount1 As Integer
ListCount1 = ListBox2.ListCount - 1
If Trim(UCase(N_Mag)) <> "" Then
  For i = ListCount1 To 0 Step -1
    If UCase(Trim(ListBox2.List(i, 2))) <> UCase(Trim(N_Mag)) Or _
       UCase(Trim(ListBox2.List(i, 1))) <> UCase(Trim(Cmb_Suite.value)) Then
      ListBox2.RemoveItem (i)
    End If
  Next i
End If
Rechercher des sujets similaires à "filtrage donnees listbox"