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,
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