Tri dans une listbox

Bonjour,

Je ne comprends pas ce que je fais de mal !

J’essaie de faire en demandant à mon action de me trier un mois défini dans ma listbox afin que je puisse voir juste ce mois .

merci de votre aide

Private Sub boutonafficher_Click()
'déclaration des variables
Dim critere
Dim derniereligne As Integer, x As Integer
'affectation des variables
critere = Range("k4")
'onrecupere la derniere ligne de la source de donnees
If Cells(Rows.Count, 1).End(xlUp).Row = l Then
derniereligne = 2
Else
derniereligne = Cells(Rows.Count, l).End(xlUp).Row
End If
'on efface le contenu de la liste a chaque recherche
LISTCOMMANDE.Clear
LISTCOMMANDE.BackColor = RGB(100, 100, 400)
'on parcours la source de données de la ligne a la derniere ligne
For x = 1 To dernierligne
'on teste le critere, ici le contenu de k4 avec la source de donné
If Cells(x, 3) = critere Then
'on ecrit dans la listbox
Me.LISTCOMMANDE.AddItem Cells(x, 1)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 1) = Cells(x, 2)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 2) = Cells(x, 3)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 3) = Cells(x, 4)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 4) = Cells(x, 5)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 5) = Cells(x, 6)
Me.LISTCOMMANDE.List(Me.LISTCOMMANDE.ListCount - 1, 6) = Cells(x, 7)
      End If
  Next x
End Sub

Merci pour votre aide .

LE MESSAGE D ERREUR : run-time error '1004'

application-defined or object-defined error

le debug s arrette la :

derniereligne = Cells(Rows.Count, l).End(xlUp).Row

PS: J'utilise un exel 2016 version anglais

Thierry.

10essaie-2.xlsm (79.87 Ko)

Bonjour,

plusieurs remarques,

1) utilise les balises </> pour délimiter ton code sur le forum

2) mets-nous ton fichier avec ton code (.xlsm)

3) dis-nous quel est ton problème (message d'erreur ?) je vois que tu écris COMMANDE tantôt avec un M tantôt avec 2 M.

SLT et merci

comment j enregistre sous .xlsm?

27718162 10210583310161831 1281707017 n

re-bonjour,

xlsm = macro enabled workbook.

indique également sur quelle ligne tu reçois ce message d'erreur

piouu merci , voila fichier envoyé

quand je fait le debug il s arrette sur cette ligne

derniereligne = Cells(Rows.Count, l).End(xlUp).Row

Bonjour,

voici une proposition de correction, je n'ai pas pu garder ton entête de listbox, Il semble impossible de remplir celui-ci via VBA.

9essaie-2.xlsm (72.04 Ko)

Bonjour,

Voici une proposition de correction, je n'ai pas pu garder ton entête de listbox, Il semble impossible de remplir celui-ci via VBA.

HaHaHaH MERCI merci MERCI . du coup ce que j avais fait pas top LOL .

Cela fait le travaille demander en tout cas merci bien . <3

Et comment je pourrais additionner les totaux de cette mème listbox?

MERCI encore pour ton temps .

Bonjour,

voici une adaptation du code.

pourquoi ne pas utiliser les filtres et les possibilités de faire un total sur la table ? cela t'éviterait d'avoir à manipuler une listbox et une table des mois ...

Bonjour,

voici une adaptation du code.

pourquoi ne pas utiliser les filtres et les possibilités de faire un total sur la table ? cela t'éviterait d'avoir à manipuler une listbox et une table des mois ...

slt slt Impeccable merci pour ton aide .

Par contre quand je fais un "move or copy" pour faire une 2em feuilles cela ne fonctionne plus.Normal ?

Faut t’il que je renomme mes boutons.

Et aussi quand je protége la feuille cela ne marche plus non plus Oo

Rechercher des sujets similaires à "tri listbox"