Possible?

rainbow69006

XLDnaute Occasionnel
Bonjour

Jai userform avec 5 optionbutton et 2*2 combobox.

Je voudrais pour exemple:
- je coche l'optionbutton(3)
- je choisi "avion" dans ma 1 ere combobox
- je choisi "porte" dans ma 2 eme combobox
- je choisi "airbus" dans ma 3 eme combobox
- je choisi "a380" dans ma 4 eme combobox

eh bien je voudrais arriver sur l'userform de la feuille(3) d'un classeur nomme "porte.avion"
et je voudrais que sur l'userform, dans une textbox il y ait le mot "airbus" et dans une autre le mot "a380".

Est ce que cela vous semble possible?
 

rainbow69006

XLDnaute Occasionnel
Re : Possible?

Voila j'ai realiser un exemple
il faut d'abord ouvrir le fichier "exemple menu" (3 pages)
puis le fichier XA2.XC3 (il faut ouvrir l'userform1)

Voila j'espere que ce sera assez clair.

Merci de ton aide
 

Pièces jointes

  • XA2.XC3.zip
    23.8 KB · Affichages: 31
  • exemple menu.xls
    43 KB · Affichages: 60
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Possible?

Re bonsoir,

Ci-joint une proposition pour le fichier "exemple menu".

Pour le lancement du USF de l'autre fichier, je te suggère de passer par l'évenement "feuille active" pour l'ouvrir:

Code:
Private Sub Worksheet_Activate()
UserForm1.Show
End Sub

Bon test. :)
 

Pièces jointes

  • exemple menu.zip
    16.4 KB · Affichages: 45

rainbow69006

XLDnaute Occasionnel
Re : Possible?

Merci de ta reponse skoobi.

Par contre je ne comprend pas grand chose a ton code , peu tu me donner plus d'expliquation?
(cela me parait bizarre il n'y a pas d'emplacement pour les classeurs, genre pour le classeur XA2.XC3 )
quand je met valider sa me met une erreur a chaque coup
merci
 
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Possible?

Re,

il n'y a pas d'emplacement pour les classeurs, genre pour le classeur XA2.XC3
il faut que le classeur soit ouvert, si tu veux qu'il s'ouvre en cliquant sur "validate", il faudra modifier le code.

PS: j'ai ajouté la liste "XC" et "XD" dans le code.
 

Pièces jointes

  • exemple menu v2.zip
    17.2 KB · Affichages: 42
  • exemple menu v2.zip
    17.2 KB · Affichages: 44
  • exemple menu v2.zip
    17.2 KB · Affichages: 39

skoobi

XLDnaute Barbatruc
Re : Possible?

Re,

Je m'y attendais :D.

Voici le code modifié pour le bouton "validate":

Code:
Private Sub CommandButton1_Click()
chemin = "C:\"
Workbooks.Open chemin & ComboBox1.Value & "." & ComboBox2.Value & ".xls"
If OptionButton1 Then 'si coche AA
    Sheets(1).Activate 'active la feuille 1
ElseIf OptionButton2 Then 'si coche BB
    Sheets(2).Activate 'etc...
ElseIf OptionButton3 Then
    Sheets(3).Activate
ElseIf OptionButton5 Then
    Sheets(4).Activate
ElseIf OptionButton6 Then
    Sheets(5).Activate
End If
Unload usmenu2
End Sub

Adapte la variable "chemin" biensûr...
 

rainbow69006

XLDnaute Occasionnel
Re : Possible?

Bonjour Skoobi

- J'ai un probleme dans ce que tu m'a envoye. l'userform usmenu2 s'ouvre a l'ouverture du classeur.
mais moi dans mon fichier j'ai un premier user form et si on coche l'optionbutton 3 eh bien sa doit ouvrir l'usmenu2:
''If OptionButton3.Value = True Then usmenu2.Show''
- De plus finalement je ne me sert pas de XC et XD.

J'ai essaye cela mais sa ne marche pas (quand dans le primier user form j'essaye de lancer le 2eme (usmenu2) eh bien il y a une erreur)




Dim liste As New Collection

Private Sub UserForm_Click()
chemin = "chemin"
Workbooks.Open chemin & ComboBox1.Value & "." & ComboBox2.Value & ".xls"
If OptionButton1 Then 'si coche AA
Sheets(1).Activate 'active la feuille 1
ElseIf OptionButton2 Then 'si coche BB
Sheets(2).Activate 'etc...
ElseIf OptionButton3 Then
Sheets(3).Activate
ElseIf OptionButton5 Then
Sheets(4).Activate
ElseIf OptionButton6 Then
Sheets(5).Activate
End If
Unload usmenu2
End Sub

Private Sub CommandButton2_Click()
Unload usmenu2
End Sub


Private Sub UserForm_Initialize()
'création de la liste XA
With Sheets("XA")
For Each cel In .Range(.[A2], .[A2].End(xlDown))
On Error Resume Next
liste.Add cel.Value, cel.Value 'cré la liste "sans doublons"
Next
On Error GoTo 0
End With
For Each v In liste
ComboBox1.AddItem liste(v) 'ajoute la liste au combobox
Next
For i = 1 To liste.Count
liste.Remove 1 'vide la liste pour pouvoir en recréer une autre
Next
'création de la liste XB
With Sheets("XB XC XD")
For Each cel In .Range(.[A2], .[A2].End(xlDown))
On Error Resume Next
liste.Add cel.Value, cel.Value 'cré la liste "sans doublons"
Next
On Error GoTo 0
End With
For Each v In liste
ComboBox3.AddItem liste(v) 'ajoute la liste au combobox
Next
For i = 1 To liste.Count
liste.Remove 1 'vide la liste pour pouvoir en recréer une autre
Next

End Sub
 
Dernière édition:

rainbow69006

XLDnaute Occasionnel
Re : Possible?

Bonjour

Si je lance ton programe a travers du fichiers que tu m'a donne cela marche impeccable

Donc j'ai copier tes modules et tes userform dans mon fichier.
J'essaye alors de lancer ton user form a travers un de mes user form grace a cela : If OptionButton3.Value = True Then usmenu2.Show

et la cela me met run time error 424 objet requis.

Je me doute qu'il faut changer quelque chause dans ton programe mais je ne sais pas quoi
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 611
Messages
2 090 226
Membres
104 452
dernier inscrit
hamzamounir