ListBox tri affiné

ced91300

XLDnaute Occasionnel
Bonjour à tous,

Sur un résultat de tri listbox, je souhaiterai pouvoir retirer (juste de la listbox pas de la base) certaines lignes comportant une valeur précise afin d'avoir un résultat plus affiné, mais je ne trouve pas la commande.
Retirer du résultat listbox en + toutes les lignes ayant la valeur "toto"

Ou alors encore plus simple, que soit décompté du compteur list les ligne ayant la valeur "toto"

UserForm1.TextBox12 = UserForm1.ListBox1.ListCount moins les ligne comportant"toto"

merci.

Cordialement.
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour ced91300, salut Papou, heureux de te croiser,

En supposant que les "toto" sont dans la 1ère colonne de la ListBox, le code du bouton dédié :
Code:
Private Sub CommandButton1_Click()
Dim i&
With ListBox1
    For i = .ListCount - 1 To 0 Step -1
        If .List(i, 0) = "toto" Then .RemoveItem i
    Next
    TextBox12 = .ListCount
End With
End Sub
A+
 

ced91300

XLDnaute Occasionnel
Bonjour ced91300, salut Papou, heureux de te croiser,

En supposant que les "toto" sont dans la 1ère colonne de la ListBox, le code du bouton dédié :
Code:
Private Sub CommandButton1_Click()
Dim i&
With ListBox1
    For i = .ListCount - 1 To 0 Step -1
        If .List(i, 0) = "toto" Then .RemoveItem i
    Next
    TextBox12 = .ListCount
End With
End Sub
A+
Bonjour, merci pour la réponse,
Bonjour ced91300, salut Papou, heureux de te croiser,

En supposant que les "toto" sont dans la 1ère colonne de la ListBox, le code du bouton dédié :
Code:
Private Sub CommandButton1_Click()
Dim i&
With ListBox1
    For i = .ListCount - 1 To 0 Step -1
        If .List(i, 0) = "toto" Then .RemoveItem i
    Next
    TextBox12 = .ListCount
End With
End Sub
A+

Bonsoir, et merci de ton soutien, c'est bien cela que je voulais. Une petite question en plus doit-on obligatoirement passer par un bouton ou possibilité que cela se fasse automatiquement dans le calcul liscount
en gros un nouveau compteur liscount qui retire automatiquemet dans le calcul les "toto"
ex: 100 lignes listbox donc 15 valeurs "toto" et que mon résultat listcount ne soit pas 100 mais 85

Merci

Cordialement
 
Dernière édition:

job75

XLDnaute Barbatruc
Re,

Bien sûr on peut mettre le code précédent dans la macro Private Sub UserForm_Initialize().

Et si l'on ne veut que le résultat dans TextBox12 :
Code:
Private Sub UserForm_Initialize()
'ici le remplissage de ListBox1
TextBox12 = ListBox1.ListCount - Application.CountIf([A:A], "toto")
End Sub
en supposant que la 1ère colonne de ListBox1 est la copie de la colonne A de la feuille active.

A+
 

ced91300

XLDnaute Occasionnel
Re,

Bien sûr on peut mettre le code précédent dans la macro Private Sub UserForm_Initialize().

Et si l'on ne veut que le résultat dans TextBox12 :
Code:
Private Sub UserForm_Initialize()
'ici le remplissage de ListBox1
TextBox12 = ListBox1.ListCount - Application.CountIf([A:A], "toto")
End Sub
en supposant que la 1ère colonne de ListBox1 est la copie de la colonne A de la feuille active.

A+

Bonsoir

Cela ne fonctionne pas, ca reste figé sur le total de la listbox

Merci

Cordialement

Cédric
 

ced91300

XLDnaute Occasionnel
Bonjour
Quand j'utilise cela, "UserForm1.TextBox25 = UserForm1.ListBox1.ListCount" , j'ai bien le compteur qui s'actualise au fur et à mesure de mon tri list box.

Avec le tien, TextBox12 = ListBox1.ListCount - Application.CountIf([A:A], "toto") Il décompte bien au lancement userform mais ne s'actualise pas au fur et à mesure du TRI ListBox

Tout ce fait via l'userform (la base de données étant cachée)

Merci
Cordialement
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour ced1300, job75 ;),

job75 est bien gentil de te fournir un fichier exemple alors que tu n'éprouves pas le besoin d'en fournir un.

Cela dit : En quoi un tri de la ListBox1 change-t-il le nombre de 'toto" présents dans la liste ? Il me semble qu'un tri modifie la place des "toto" mais pas leur nombre ?
 

ced91300

XLDnaute Occasionnel
Bonjour ced1300, job75 ;),

job75 est bien gentil de te fournir un fichier exemple alors que tu n'éprouves pas le besoin d'en fournir un.

Cela dit : En quoi un tri de la ListBox1 change-t-il le nombre de 'toto" présents dans la liste ? Il me semble qu'un tri modifie la place des "toto" mais pas leur nombre ?

Bonjour merci de ta réponse,

j'ai plusieurs colonnes dans ma base j'ai un filtre par mots clés (qui s'effectue sur toutes les colonnes)

ex: j'ai 100 lignes voiture, vélo, camion puis pour chacun divers éléments sur la ligne

Si je tape "camion" j'aurai donc filtré toutes les lignes ou il y a camion (résultat du filtre 20) , dans ces camions j'ai disons 3 bleu, 3 rouge, 3 vert, 1 Jaune.

Je souhaiterais que soit exclu les verts dans un 2eme textbox listcount, et donc avoir:

-Dans un textbox liscount classique le résultat de mon filtre soit (10)
-Dans le 2 eme textbox liscount le résultat (7) qui sera le résultat de mon filtre moins les mots clés sur les lignes filtrées à ne pas comptabiliser sur la totalité résultant du filtre (ici ligne avec le mot clé à exclure du calcul "vert")

Merci
Cordialement

PS: Pour l'instant je n'ai plus internet chez moi je jongle entre mon PC et le tel

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 185
Messages
2 086 011
Membres
103 093
dernier inscrit
Molinari