XL 2013 Colonne d'une listbox

steven542304

XLDnaute Nouveau
Bonjour,

J'aimerai créer un facturier sauf qu'à peine commencé je bloque haha.
A l'aide d'un code trouvé sur le forum, j'ai créé le fichier ci-joint.
J'ai un userform qui contient une listbox de produits et un textbox pour filtrer la liste.

Sauf que la listbox n'affiche qu'une seule colonne, je n'arrive pas à afficher les autres.
La propriété de la listbox "column counts" est bien réglée à 5. Je suppose que le problème vient du code mais je suis trop novice pour savoir d'où ça vient. Si qqn à une idée.

Merci d'avence,

Code:
Private TC As Variant

Private Sub TextBox1_Change()
Me.ListBox1.Clear 'vide la ListBox1
For I = 2 To UBound(TC, 1) 'boucle sur toutes les lignes du tableau TC (en partant de la seconde)
    'si le texte de la TextBox1 (en majuscule) est contenu dans la valeur du tableau TC en ligne I, colonne 1 (en majuscule),
    'ajoute la valeur duntableau TC ligne I, colonne 1 à la ListBox1
    If UCase(TC(I, 1)) Like "*" & UCase(Me.TextBox1.Value) & "*" Then Me.ListBox1.AddItem TC(I, 1)
Next I 'prochaine ligne de la boucle
End Sub

Private Sub UserForm_Initialize()
Dim O As Object 'déclare la variable O (Onglet)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim I As Integer 'déclare la variable I (Incrément)

Set O = Sheets("Base") 'définit l'onglet O
DL = O.Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 1 (=A) de l'onglet O
TC = O.Range("A2:E" & DL) 'définit le tableau de cellulles TC
For I = 2 To UBound(TC, 1) 'boucle sur toutes les lignes du tableau TC (en partant de la seconde)
    Me.ListBox1.AddItem TC(I, 1)
    'ajoute à la LisTbox1 la valeur du tableau TC en ligne I, colonne 1
Next I 'pochaine ligne de la boucle
End Sub
 

Pièces jointes

  • Colonne listbox.xlsm
    31.5 KB · Affichages: 26

Lone-wolf

XLDnaute Barbatruc
Bonjour Steven

J'ai modifié la macro. Il manquait dans initialize la largeur des colonnes. Il faudra ajouter des labels pour les entêtes des colonnes.
Pour le fitre, inscrit les premières lettres (TextBox intuitive).
 

Pièces jointes

  • Colonne listbox.xlsm
    30.5 KB · Affichages: 36
Dernière édition:

Paritec

XLDnaute Barbatruc
Bonjour Steven540405 le forum
ton fichier en retour, tu tapes n'importe quoi dans le textbox un chiffre une lettre deux lettres
le filtre s'affiche immédiatement au fur et à mesure de la frappe
a+
Papou:)
 

Pièces jointes

  • Steven542405 V2.xlsm
    34.2 KB · Affichages: 28
Dernière édition:

steven542304

XLDnaute Nouveau
Bonjour à vous,

Un mot, génial, merci infiniment pour vos réponses.

Lone wolf : c'est parfait. Je me demandais également comment "formater" les colonnes de la listbox pour garder le format monétaire ou pourcentage. C'est chose faite avec ta réponse, merci beaucoup :)

Papou : C'est nickel également, merci beaucoup. Ton pseudo me dit quelque chose, tu as sûrement dû déjà m'aider dans un post précédent. ;)

JB : Merci également pour ton retour. Vraiment pas mal comme formulaire, très élaboré. Mais je cache pas que j'ai pris peur en ouvrant le code haha. Ca peut être un bon exercice à réadapter sur mon fichier pro. (J'adore ton site, de manière générale je m'y rend souvent dès que j'ai une petite difficulté)

Problème triplement résolu, merci encore.

Steven
 

Discussions similaires

Haut Bas