Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 filtre avec critère numérique (fonction if)

tarik.malah

XLDnaute Nouveau
je veux afficher seulement les lignes ont un nombre inferieur ou égale a le nombre dans le combobox
quand click sur le bouton pour afficher le résultat, il affiche tous les lignes du tableau
merci de m'aidez

le code :
Private Sub CommandButton10_Click()
On Error Resume Next

Dim lr1, bn1, bs1 As Integer
UserForm4.ListBox1.Height = 222
UserForm4.ListBox1.Width = 435
UserForm4.ListBox1.ColumnCount = 3
Me.ListBox1.ColumnWidths = "120;260;50"

lr1 = Feuil3.Range("k10000").End(xlUp).Row
For bn1 = 3 To lr1
bs1 = bn1 + 1


If Feuil3.Cells(bn1, "K").Value <= Me.ComboBox2.Value Then

Me.ListBox1.AddItem
Me.ListBox1.List(ListBox1.ListCount - 1, 0) = Feuil3.Cells(bn1, "E").Value
Me.ListBox1.List(ListBox1.ListCount - 1, 1) = Feuil3.Cells(bn1, "F").Value
Me.ListBox1.List(ListBox1.ListCount - 1, 2) = Feuil3.Cells(bn1, "K").Value
End If

Next bn1
End Sub
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour tarik.malah,
Déjà :
Lorsqu’on rentre sur un fil, comme dans la vie de tous les jours, on est poli en disant « Bonjour ».
Lien
Ensuite :
Utilisez les balises </> pour le code c'est plus lisible ( à droite de l'icone GIF )
Enfin :
UserForm1.ComboBox1.Value est une chaine, non un nombre.
Essayez :
VB:
If Feuil3.Cells(bn1, "K").Value <= CInt(UserForm1.ComboBox1.Value) Then
Pour terminer :
A quoi sert la variable "bs1" ? Vous ne l'utilisez pas.
 

Discussions similaires

Réponses
4
Affichages
403
Réponses
17
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…