kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005
-
8 juil. 2005 à 15:24
jpleroisse
Messages postés1788Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention11 mars 2006
-
9 juil. 2005 à 20:07
Bonjour, je débute en VBA, je suis sur un projet Excel et je cherche à avoir dans un même Userform une ListBox dépendant d'une Combobox.
A l'ouverture, ma Combobox est correctement rempli, malheureusement, je n'arrive pas à modifier ma ListBox qui reste désespérément vide...
Exemple : Si je choisis Garçon dans ma Combobox, je veux des prénoms de garçons dans ma listebox et si je choisis fille, je veux des prénoms féminins dans ma Listbox!
kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005 8 juil. 2005 à 16:00
Alors...
Dans ma feuille Excel, j'ai une colonne avec les prénoms (ma colonne B) et une autre avec les sexes (garçon ou fille)... tout en sachant que dans mon cas, j'ai 18 sexes différents... et c'est variable... A ce propos, je me suis un peu raté pour rentrer mes 18 items mais bon... ils sont là!
kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005 8 juil. 2005 à 16:19
En fait, j'ai donc fait une Sub Userform_Initialize
Et dans cette Sub, j'ai une dim Sexe qui doit prendre la valeur sélectionnée dans ma Combobox, mais elle ne fait que choisir celle initialement sélectionnée, c'est-à-dire rien... Si je change la valeur dans ma combobox, rien ne se passe...
jpleroisse
Messages postés1788Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention11 mars 200627 8 juil. 2005 à 16:21
Re,
Là, franchement, je ne vois pas comment faire si les prénoms de garçons et filles sont mélangés dans une seule colonne.
Si tu avais, par exemple dans la colonne B tous les prénoms des garçons
et dans la colonne C, tous les prénoms des filles, à ce moment on
pourrait fair un code du genre
If Combobox1.Text = "Garçons" Then (ou un Select Case)
et ici un code pour mettre tous les prénoms des garçons dans la ListBox,
Idem pour filles.
jpleroisse
Vous n’avez pas trouvé la réponse que vous recherchez ?
kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005 8 juil. 2005 à 16:40
Le problème, c'est que quand ma Userform s'ouvre, la valeur combobox1.Text est vide... et si je change la valeur, ça ne change pas...
Je vois pas le souci par contre pour le fait qu'il n'y est qu'une colonne, une simple recherche dans mon tableau et ça doit marcher...
kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005 8 juil. 2005 à 22:25
Marche pas, j'ai toujours un problème...
Sub Userform_Initialize()
'Remplissage de la zone de liste
Dim NbProduits As Integer
Dim Rayon As String
NbProduits = Sheets("Inventaire").Cells(4, 5).Value
For i = 1 To 18
ComboBox1.AddItem Sheets("Inventaire").Cells(7 + i, 5).Value
Next i
Rayon = ComboBox1.Text
For j = 1 To NbProduits
If Sheets("Inventaire").Cells(3 + j, 1).Value = Rayon Then
ListBox1.AddItem Sheets("Inventaire").Cells(3 + j, 2).Value
End If
Next j
ComboBox1.ListIndex = 0
End Sub
Voilà ma procédure... Après un pas à pas détaillé, je me rends compte que Rayon est vide... A priori, ça devrait être égal à mon premier item...
kioups
Messages postés6Date d'inscriptiondimanche 29 novembre 2009StatutMembreDernière intervention 9 juillet 2005 9 juil. 2005 à 17:57
Merci beaucoup! On se rapproche, mais manque encore un petit truc...
Là, quand ma Userform s'ouvre, j'ai mon premier item de ma combobox qui est sélectionné et les items correspondants dans ma listbox. Malheureusement, quand je change l'item de ma combobox, ma listbox reste inchangée... Ce que j'aimerai, c'est que la listbox change quand je me déplace dans ma combobox... Honnêtement, je sais pas si c'est possible, mais bon...
jpleroisse
Messages postés1788Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention11 mars 200627 9 juil. 2005 à 20:07
Bonjour,
Je pens que c'est normal, puisque l évènement Initialize à eu lieu, Il
te faut placer un code dans l'évènement (Change où Click) de la
Combobox, du genre.
If Combobox1.Text = "xxx"
ici le code1 pour remplir la Listbox
ElseIf Combobox1.Text = "yyy"
ici le code2 pour remplir la ListBox
ElseIf ect.....
End If
où si tu n'as pas trop de données dans le combobox, un select case