Nat44200
Messages postés24Date d'inscriptionjeudi 4 août 2011StatutMembreDernière intervention24 août 2011
-
10 août 2011 à 13:14
Nat44200
Messages postés24Date d'inscriptionjeudi 4 août 2011StatutMembreDernière intervention24 août 2011
-
12 août 2011 à 12:58
Bonjour a tous,
Voici mon probleme:
J'ai cree 2 USF.
Sur la UserForm1 j'ai :
Une MultiPage1 avec 2 Pages (Page1 et Page2)
Sur la UserForm2 j'ai:
un Frame avec 2 OptionButton.
Ce que je souhaite faire: Lorsque je selectionne l'OptionButton1, la Page1 de ma UserForm1 s'ouvre automatiquement. Lorsque je selectionne l'OptionButton2, la Page2 de ma UserForm1 s'ouvre.
Pour le moment j'ai reussi a ouvir la UserForme1 quand je coche un des boutons:
Private Sub OptionButton1_Click()
If OptionButton1 = True Then
UserForm1.Show
End If
End Sub
Mais si je veux rajouter le code pour dire que je veux que se soit sur la Page1 ou la Page2 que se fasse l'ouverture en fonction du Button selectionne, la ca coince:
Private Sub OptionButton1_Click()
If OptionButton1 = True Then
UserForm1.MultiPage1.Page1.Show
End If
End Sub
Ca me mets error 438 et le debug sur ma ligne UserForm1.MultiPage1.Page1.Show
Quelle est la solution ?
Merci beaucoup de votre aide
A voir également:
VBA - Ouvir une Page d'une MultiPage grace a un OptionButton
cs_GG72
Messages postés94Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention30 octobre 2011 10 août 2011 à 19:07
Bonjour
Essaies ceci:
Private Sub OptionButton1_Click()
If OptionButton1 = True Then
UserForm1.MultiPage1.Value = 0 'Pour afficher la page 1
UserForm1.MultiPage1.Value = 1 'Pour afficher la page 2
End If
End Sub
cs_GG72
Messages postés94Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention30 octobre 2011 11 août 2011 à 19:56
Bonjour Nat
Et oui encore moi
En effet, mon message n'était pas très clair mais tu as très bien décodé ce que je voulais te dire.
Par contre, pour afficher l'userform1, il faut ajouter la commande:
Userform1.Show 0.
Ce qui nous donne:
Private Sub OptionButton1_Click()
Userform1.Show 0
If OptionButton1 = True Then
UserForm1.MultiPage1.Value = 0
End If
End Sub
Private Sub OptionButton2_Click()
Userform1.Show 0
If OptionButton2 = True Then
UserForm1.MultiPage1.Value = 1
End If
End Sub
Et ajouter la commande UserForm2.Show 0 pour afficher l'userform2
soit dans Workbook_Open() si cet affichage intervient lors de l'ouverture du classeur.
Private Sub Workbook_Open()
UserForm2.Show 0
End Sub
Attention de ne pas oublier le 0 après Show, sinon il faudra fermer userform1 pour pouvoir intervenir sur userform2.
Bon courage.
Gérard
Vous n’avez pas trouvé la réponse que vous recherchez ?
Nat44200
Messages postés24Date d'inscriptionjeudi 4 août 2011StatutMembreDernière intervention24 août 20111 12 août 2011 à 09:58
Re bonjour,
je viens de tester le code que tu m'a envoye. Donc il y a quelques problemes.
* Tout d'abord avec le 0 ca me mets un debug sur la ligne le contenant (erreur 401).
* Ensuite j'ai tester en enlevant le 0, donc la mes feuilles s'ouvrent mais petit probleme:
Quand je clique sur le OptionButton1, pas de probleme, il m'ouvre la USF1 sur la Page1. Mais quand je clique sur OptionButton2, il m'ouvre aussi sur la page1 (etonnant car la valeur est bien egale a 1). Le plus suprenant, c'est quand je veux recocher l'OptionButton1 (sans avoir fermer l'application avant), il m'ouvre la Page2 de la USF1 et quand je veux recocher l'OptionButton2 (apres avoir cocher une seconde fois le Button1) il m'ouvre aussi la page2.
Je pense donc soulever 2 problemes:
- l'OptionButton2 suit l'OptionButton1
- l'OptionButton1 s'incremante au fur et a mesure.
Voila, j'espere que tu vas me comprendre car c'est assez difficil a expliquer !!!
Bonne journee (je ne pourrais tester tes suggestions que ce matin ou a partir de lundi donc desole si je ne te repond pas).
cs_GG72
Messages postés94Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention30 octobre 2011 12 août 2011 à 11:22
Ok pour UserForm1.show 0.
Mais ton USF2 (celle où se trouvent tes OptionButton) s'ouvre en modal.
Dans ton code tu dois avoir l'instruction userform2.show quelque part.
Là aussi, il faut rajouter le 0. ==> UserForm2.show 0 pour qu'elle s'ouvre en non modal.
En effet, on ne peut pas commander une fenêtre non modale à partir d'une fenêtre modale.
Actuellement, ton USF2 modale commande ton USF1 non modale d'où ton erreur 401.
Nat44200
Messages postés24Date d'inscriptionjeudi 4 août 2011StatutMembreDernière intervention24 août 20111 12 août 2011 à 11:41
Parfait encore un probleme de resolu. Il fallait juste que je rajoute un 0 dans mon code pour appeler la USF (dans mon module1). et j'ai du enlever les 0 dans le code des Optionbutton (je ne sais pas pourquoi)
Donc pour resumer pour les futurs internautes:
- Dans ma USF2:
Private Sub OptionButton1_Click()
Userform1.Show
If OptionButton1 = True Then
UserForm1.MultiPage1.Value = 0
End If
End Sub
Private Sub OptionButton2_Click()
Userform1.Show
If OptionButton2 = True Then
UserForm1.MultiPage1.Value = 1
End If
End Sub
- Dans ThisWorkbook:
Private Sub Workbook_Open()
UserForm2.Show 0
End Sub
- Dans le Module :
Sub NomApplication()
UserForm2.Show 0
End Sub
Merci Beaucoup Gerard de ton aide (encore une fois)
A bientot sur le Forum (car je pense que j'aurais encore d'autres questions vu que je debute ).
cs_GG72
Messages postés94Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention30 octobre 2011 12 août 2011 à 12:17
Bizarre, bizarre,
Si j'utilise ton code, je me retrouve avec le décalage que tu me signalais donc
OptionButton1 ouvre la page2 dans multipage1
et
OptionButton2 ouvre la page1 dans multipage1
De plus le fait de supprimer le 0 dans le code USF2 t'oblige à fermer USF1 à chaque fois pour accéder à USF2 mais sans doute n'est-ce pas un problème pour ton appli.
En tout cas, l'essentiel, c'est que tout fonctionne bien chez toi.
Nat44200
Messages postés24Date d'inscriptionjeudi 4 août 2011StatutMembreDernière intervention24 août 20111 12 août 2011 à 12:25
Heu oui pardon moi aussi j'ai eu une inversion dans les Pages du coup j'ai bidouiller le truc en mettant 1 pour l'OptionButton1 et 0 pour l'Optionbutton2 (bizar bizar tout ca et pas tres classe!!!).
Et le fait de ne pas fermer l'appli ne me derange pas car j'ai deja creer un bouton Fermer.