USEFORM DANS ET VBA EXCEL

cs_simplementyann Messages postés 26 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 30 mai 2007 - 28 juin 2006 à 18:50
cs_simplementyann Messages postés 26 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 30 mai 2007 - 28 juin 2006 à 23:23
Bonjour,

Dans mon UserformPrincipal, j'ai 3 Combobox et 2 problèmes :




Combobox1 : j'ai une liste de choix que j'ai nommée sur ma feuille avant de l'utiliser avec RowSource (c'est ok) 




 Combobox2 : ma seconde liste de choix est fonction de mon choix dans ma Combobox1.


(j'aimerais que celle-ci ne présente pas de choix possible si un choix a été fait dans Combobox1)


 <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>



 Combobox3 : (si et seulement si un choix a été fait dans Combobox2)  afficher une liste de choix ... avec  5 listes différentes possibles car  5 choix dans Combobox2. (1 liste différente par choix)


 


... et tout cela avec une validation dans un seul UserForm.




(Je n'arrive pas à mettre de condition au choix d'une liste) 
 


Merci par avance pour vos idées, je suis en panne.


 




Yann








 

2 réponses

valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
28 juin 2006 à 21:40
Salut,
ai-je bien compris .....
J'ai créé des listes nommées :
ChoixCmb1 : pour remplir le combo 1
      De Choix1 à Choix10
ChoixCmb2 : pour remplir le combo 2
      De Cmb2 1 à Cmb2 5
Liste1
......
......
Liste5 pour le choix dans le combo2   

Private SubComboBox1_Change()
 

If ComboBox1.Value <> "" Then    

ComboBox2.RowSource = ""  

Else    

ComboBox2.RowSource = "choixcmb2"  

End If End Sub

Private Sub

ComboBox2_Change()  

Select Case ComboBox2.Value  

Case "Cmb2 1"    

ComboBox3.RowSource = "Liste1"  

Case "Cmb2 2"    

ComboBox3.RowSource = "Liste2"  

Case "Cmb2 3"    

ComboBox3.RowSource = "Liste3"  

Case "Cmb2 4"    

ComboBox3.RowSource = "Liste4"  

Case "Cmb2 5"    

ComboBox3.RowSource = "Liste5"  

Case Else    

ComboBox3.RowSource = ""  

End Select

End Sub

Private Sub

UserForm_Initialize()  

ComboBox1.RowSource = "Choixcmb1"  

ComboBox2.RowSource = "Choixcmb2"  

ComboBox3.RowSource = "" End Sub

Cordialement, Jean-Paul  
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_simplementyann Messages postés 26 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 30 mai 2007
28 juin 2006 à 23:23
Merci Jean-Paul, cela me paraît si simple désormais. Je vais essayer de mettre en pratique tes solutions sur cet exemple qui ressemble à ce dont j’ai besoin :







un combobox1   Mois   (avec ce choix, le combobox2 n'a pas lieu d'être)
un combobox2   Semaine   (idem : pas de choix dans combobox1)
un combobox3  TypeAffaire (3 choix qui determinent les listes cbobox4)




un combobox4  Affaire (6 listes par TypeAffaire) 




un combobox5  NumeroAffaire (100 numeros par Affaire)




 <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>






Encore Merci,



Cordialement, Yann
0
Rejoignez-nous