Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Cela fait déjà un moment que je cherche dans le forum, mais je ne trouve pas ...
J'ai un optionbutton (en fait trois choix: mère, père ou autre) je voudrais lorsque je coche un des 3 choix que les coordonnées qui ont déjà été entrées par un useform s'affiche dans les textbox du nom, prénom, téléphone...
J'espère être claire...
Je pensais qu'il suffisait de mettre ceci:
Private Sub OptionButton1_Click()
If Controls("OptionButton1").Value = True Then
Sheets("Feuil2").Select
Re : Afficher textbox suite au choix de optionbutton
Bonsoir Tigrette, le Forum
Sans le UserForm c'est difficile de comprendre...
Y a-t'il un UserForm autre que celui lancé contenant les OptionButtons qui se nommerait "Mère" ?
Sinon dans le Même UserForm on peut écrire comme ceci :
Code:
Private Sub OptionButton1_Click()
Dim li As Long
li = 1 'pour pouvoir tester
If OptionButton1.Value = True Then
With Sheets("Feuil2")
TextBox9 = .Range("O" & li).Value
TextBox10 = .Range("P" & li).Value
.Cells(li, 9).Value = OptionButton1.Caption
End With
End If
End Sub
On peut employer comme toi "Controls("OptionButton1").Value" mais ce serait plus en cas de passage de Variable ou d'Argument style :
For x = 1 to 3
If Controls("OptionButton" & x ).Value = True Then
etc....
Pour ce qui est du reste, je n'aime pas trop les "Select" de feuille... Mais si c'est pour "vraiment" sélectionner la feuille alors oui c'est d'accord...
Re : Afficher textbox suite au choix de optionbutton
Merci,
J'avais déjà enlevé "Select" de feuille pcq j'étais sur la bonne feuille. C'est que j'ai plusieurs UserForm appelés un après l'autre et qui servent à remplir des tableaux dans 3 feuilles différentes. Cela fonctionne bien, merci!
Est-ce que tu peux m'expliquer la différence entre le range et le .range pourquoi ajouter le point devant ?
Re : Afficher textbox suite au choix de optionbutton
J'ai oublié, est-ce qu'il y a moyen (en cas d'erreur de choix) de désélectionner par exemple le bouton mère pour choisir le bouton père. Présentement ma première sélection reste là et pas moyen de changer, est-ce qu'il faudrait que je crée un bouton d'effacement en cas d'erreur ?
Private Sub OptionButton1_Click()
Dim li As Long
li = 1 'pour pouvoir tester
If OptionButton1.Value = True Then
[B][COLOR=red]With Sheets("Feuil2")[/COLOR][/B]
TextBox9 = [B][SIZE=5][COLOR=red].[/COLOR][/SIZE][/B]Range("O" & li).Value
TextBox10 = [B][SIZE=5][COLOR=#ff0000].[/COLOR][/SIZE][/B]Range("P" & li).Value
[B][SIZE=5][COLOR=#ff0000].[/COLOR][/SIZE][/B]Cells(li, 9).Value = OptionButton1.Caption
[COLOR=red][B]End With[/B][/COLOR]
End If
End Sub
Ce code équivaut à écrire :
Code:
Private Sub OptionButton1_Click()
Dim li As Long
li = 1 'pour pouvoir tester
If OptionButton1.Value = True Then
TextBox9 = [B][COLOR=red]Sheets("Feuil2").[/COLOR][/B]Range("O" & li).Value
TextBox10 =[COLOR=red][B] Sheets("Feuil2").[/B][/COLOR]Range("P" & li).Value
[COLOR=red][B]Sheets("Feuil2").[/B][/COLOR]Cells(li, 9).Value = OptionButton1.Caption
End If
End Sub
La seule grosse différence consiste en le fait que VBA va faire une instance à la Feuil2 autant de fois qu'elle sera mentionnée dans ton code, ce qui ralentit considérablement l'éxécution ainsi qu'une surconsommation de l'usage mémoire qui est sollicité également.
L'usage du With [Object] permet de faire référence qu'une seule fois à l'objet, au lieu de le faire à chaque affectation de propriété.
Par contre le "." lui est obligatoire dans le Statement entre le With et le End With, car c'est ce petit point qui va faire comprendre à VBA que le membre de l'objet est bien celui de l'objet référencé par le With du départ...
Si on l'oublie, par exemple : Range("O" & li).Value c'est le membre Range de la Feuille Active qui sera référencé... D'où pas mal de problème en perspective...
Ensuite, mais je crois que tu as déjà trouvé entre-temps, pour
J'ai oublié, est-ce qu'il y a moyen (en cas d'erreur de choix) de désélectionner par exemple le bouton mère pour choisir le bouton père. Présentement ma première sélection reste là et pas moyen de changer, est-ce qu'il faudrait que je crée un bouton d'effacement en cas d'erreur ?
Re : Afficher textbox suite au choix de optionbutton
Merci beaucoup Thierry,
Effectivement je suis du Québec donc pas sur le même fuseau horaire.
J'ai également pris du temps à revenir voir les réponses puisque je continuais d'avancer dans mon fichier...tu réponds très bien à mon questionnement.
J'ai souvent vu de tes réponses sur le forum qui m'ont souvent dépanné, mais c'est la première fois que tu me réponds directement. J'ai seulement un petit cours programmation en basic et en Pascal fait il y a une vingtaine d'année au Cegep, pour excel j'apprend au fur et à mesure de mes besoins et j'essaie de me créer des besoins car j'aime bien apprendre.
Encore une fois merci et continu de nous aider... nous tous sur le forum
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.