Trier listbox suivant un ordre choisi, et modifier l'apparence d'un item

Bonjour à tous, je cherche à trier une listbox suivant un ordre choisi, une colonne renseignée sur une autre feuille.

Cette listbox permet de connaitre des éléments manquants pour assembler le produit final. Elle est alimentée par plusieurs listes différentes, en fonction de la logique de recherche de l'utilisateurs, soit par familles de produits, soit par poste d'assemblage, soit par ordre alphabétique. Cette liste bouge on supprime rajoute des items à différents moments. Seulement j'aimerais qu'a chaque mise à jour elle se remette dans l'ordre que j'aurais défini sur une colonne d'une autre feuille.

J'ai bien trouvé les fonction listbox.sort mais la c'est par ordre alphabétique, ascendant ou descendant. Avez vous une idée pour m'aider sur cette partie ?

De plus je cherche à modifier l'esthétique de certains items dans cette liste en fonction de leur provenance, si c'est une source bien précise il aurait fallu que celui ci apparaisse en rouge, ou en gras, ors je ne réussis qu'a modifier l'ensemble de l'esthétique de la listbox. Petite précision une fois remplie c'est liste est transposée dans une cellule du tableau en utilisant la fonction join.

Je vous bricole un petit exemple pour vous joindre un exemple parlant très rapidement.

Il faut cliquer sur le bouton pour faire apparaitre l'uf qui contient les deux listbox, c'est celle de gauche qui doit reussir a se mettre en ordre suivant la colonne chrono de la feuil2.

Et en bonus si les elements présents dans Aleas peuvent se colorier en rouge au moins dans la case commentaire, au mieux aussi dans la Listbox

61essais.xlsm (34.04 Ko)

Merci d'avance à tous ceux qui voudrons m'aider, mes recherches n'ont rien données ni sur le forum ni sur le web.

Bonjour à tous, je vois des vues, des téléchargements mais pas de réponse. Mon cas est un peu...compliqué mais j'avance !

J'ai réussi à trouver une méthode de trie des listbox intégrée à mon nouveau fichier, seulement je ne trouve qu'en order croissant, décroissant, ou totalement inversé. Y à t'il d'autre méthodes de trie des listbox? Dois je remplacer la listbox par autre chose? (Listview)

J'ai trouvé les options de liste personnalisée entrée en dur dans excel, et la méthode CustomOrder:= "mot,mot1" mais je ne réussis pas à copier cette méthode sur le trie de mes listbox. Voici le nouveau fichier:

44essais.xlsm (33.35 Ko)

cette listbox alimentant la case commentaire, pensez vous que l'on puisse trier directement la case commentaire en utilisant le split?

Merci d'avance pour votre aide !

Bonjour

Un essai à tester pour la première partie.

Pour la seconde, sache qu'il n'est pas possible de donner des formats différents entre eux aux divers items d'une même ListBox.

Bye !

71essais-v1.xlsm (34.46 Ko)

Merci ça fonctionne très bien !

voici une autre solution que j'ai trouvé ailleur, ici le code s'applique à un bouton mais je trouve que c'est tout aussi efficace.

Je viens de voir oui qu'il ne serait pas possible de modifier un seul item de la listbox.

Je cherche donc un moyen d'extraire les mots de la case commentaire en evenement worksheet_change et si un seul des mots correspond à ma liste alors il colorie soit le mot en rouge, soit toute la police de la case en rouge (ce deuxieme cas est surement plus simple).

je cherche, je cherche je suis preneur d'idées pour cette partie la...

Voici le code que j'ai fait, mais il me colorie ma police en rouge à tous les coups:

 For i = 0 To etat.ListBox1.ListCount - 1
 If etat.ListBox1.ListIndex(i) = (Worksheets("AP").Range("N2:N28").Value) Then
 ActiveSheet.Range("Y" & ActiveCell.Row).Font.Color = 255: Exit For
 Else
 ActiveSheet.Range("Y" & ActiveCell.Row).Font.Color = 1
 End If
 Next i
Rechercher des sujets similaires à "trier listbox suivant ordre choisi modifier apparence item"