Plusieurs OptionBuuton dans diverses frames

Marboi

XLDnaute Occasionnel
Bonjour à vous tous,

Je suis encore coincé !, et cette fois-ci avec des OptionButton. Les OptionsButton ne servent qu'à mettre dans les cellules adéquates un texte du style "Monsieur" "Madame" etc... les 4 premiers de l'USF fonctionnent sans problème, les autres dans les 2 frames différentes ne fonctionnent pas.
Si je mets en commentaires les 4 premiers, les 4 autres suivants fonctionnent mais toujours pas les 3 derniers. Si je mets les 8 premeirs en commentaires les 3 derniers fonctionnent. Je m'y suis sans aucun doute mal pris mais je ne comprends pas mon erreur.

Pourriez-vous m'éclairez ?

Merci par avance, je joins le fichier.
 

Pièces jointes

  • Mairie2.zip
    15 KB · Affichages: 34

Dull

XLDnaute Barbatruc
Re : Plusieurs OptionBuuton dans diverses frames

Salut Marboi, le Forum


Code:
If (OptionButton7 Or OptionButton4 Or OptionnButton5 Or OptionnButton6) = False Then
Pas Glop!!!:D

Code:
If OptionButton1 = False Or OptionButton2 = False Or OptionButton3 = False Or OptionButton11 = False Then
Glop :)

a reproduire sur tes autres OptionButton
Peut-être est-ce cela?

EDITION: De plus tu as une Faute sur OptionnButton10, 11, 5 et 3

Re Hasco:)

Bonne Journée
 
Dernière édition:
G

Guest

Guest
Re : Plusieurs OptionBuuton dans diverses frames

Bonjour MarBoi,

Voici le code de validation réécrit:

Code:
Private Sub CommandButton1_Click()
 
    Dim Option1 As Byte, Option2 As Byte, Option3 As Byte
    Dim txt As String
 
    'Récupérer les choix des boutons d'option
    Option1 = Abs((OptionButton1 * 1) + (OptionButton2 * 2) + (OptionButton3 * 3) + (OptionButton11 * 4))
    Option2 = Abs((OptionButton7 * 1) + (OptionButton4 * 2) + (OptionnButton5 * 3) + (OptionnButton6 * 4))
    Option3 = Abs((OptionButton8 * 1) + (OptionButton9 * 2) + (OptionButton10 * 3))
    If Option1 = 0 Then txt = "Indiquez le sexe!"
    If Option2 = 0 Then txt = txt & vbCrLf & "Indiquez l'état matrimonial!"
    If Option3 = 0 Then txt = txt & vbCrLf & "Indiquez la civilité pour le demandeur!"
    If txt <> "" Then
        MsgBox txt & vbCrLf & vbCrLf & "Avant de valider votre saisie"
        Exit Sub
    End If
    With Sheets("Accueil")
        .Range("B1") = TextBox1.Value
        .Range("B3") = TextBox2.Value
        .Range("B5") = TextBox3.Value
        .Range("B6") = TextBox4.Value
        .Range("B7") = TextBox5.Value
        .Range("B8") = TextBox6.Value
        .Range("B9") = TextBox7.Value
        .Range("B10") = TextBox8.Value
        .Range("B11") = TextBox9.Value
        .Range("B12") = TextBox10.Value
        .Range("B13") = TextBox11.Value
        .Range("B14") = TextBox12.Value
        .Range("B15") = TextBox13.Value
        .Range("B17") = TextBox14.Value
        .Range("B18") = TextBox15.Value
        .Range("B19") = TextBox16.Value
        .Range("B2") = Choose(Option1, "Monsieur", "Madame", "Mademoiselle", "Enfant")
        .Range("B4") = Choose(Option2, "Divorcé", "Veuf", "Epoux", "Célibataire")
        .Range("B16") = Choose(Option3, "Monsieur", "Madame", "Mademoiselle")
    End With
    UserForm1.Hide
End Sub

Teste et dis si cela convient.

A bientôt

[Edit] Hello Dull:) on se croise aujourd'hui!

@MarBoi: Il est toujours plus facile de décrypter et corriger un code lorsque les contrôles sont nommés explicitement. Par exemple:
'tb_Nom' au lieu de 'TextBox1'
 
Dernière modification par un modérateur:

Marboi

XLDnaute Occasionnel
Re : Plusieurs OptionBuuton dans diverses frames

Merci Dull, j'ai déjà essayé cette soluce et ça fonctionne mais pas quand il y a des OptionButtons dans des frames différentes.

Pour Hasco, je te remercie, ça fonctionne sauf pour la situation matrimoniale : époux et célibataire me mettent le message d'erreur et je ne peux pas valider.

Pourrais-tu m'expliqué la procédure que tu as utilisé ?

Merci beaucoup à vous deux.
 

Marboi

XLDnaute Occasionnel
Re : Plusieurs OptionBuuton dans diverses frames

Bonjour à tous,

Ça-y-est ! Ça fonctionne, c'était juste une petite erreur dans deux libellés d'optionnButton. J'ai quand même mis deux heures avant de le découvrir !...

Hasco, si tu veux bien m'expliquer ton choix pour cette procédure d'optionButton. Je ne l'avais pas encore vu sur le forum et ça me paraît très intéressant. Ça me re-servira par la suite.

Encore merci et bonne journée.
 
G

Guest

Guest
Re : Plusieurs OptionBuuton dans diverses frames

Bonjour MarBoi,

Lorsque plusieurs buttonOption sont en jeux, j'utilise souvent une formule du genre:

Code:
choix=Abs((OptionButton1 * 1) + (OptionButton2 * 2) + (OptionButton3 * 3) + (OptionButton11 * 4))

Plutôt que d'enchainer les if et/ou autre test.

Pour VbA Vrai=-1 Faux=0 =>
OptionButton1*1 = -1*1 = -1 s'il est coché 0*1=0 s'il ne l'est pas
OptionButton2*2 = -1*2 = -2 s'il est coché 0*2=0 s'il ne l'est pas
Etc

Mettons que optionButton2 soit coché le résultat de (0*1)+(-1*2) donnera -2.

Et ABS qui retourne l'absolu d'un nombre, nous donnera 2.

C'est comme un SommeProd dans une cellule excel.

A bientôt
 

Marboi

XLDnaute Occasionnel
Re : Plusieurs OptionBuuton dans diverses frames

Bonsoir à vous tous,

Je remecie Hasco pour son programme qui fonctionne parfaitement.

Par contre j'ai encore un petit souci (je pense), je dois mettre une condition lorsque l'optionButton est Mr, veuf, epoux, divorcé, c'est d'office au masculin ; par contre, lorsque Mme ou Mlle est coché, ces termes doivent être au féminin. J'avoue savoir le faire avec une condition pour un terme approprié mais comme c'est l'optionButton qui va déterminé la situation, je ne sais pas trop comment faire.

Je m'explique : les termes que j'ai choisi sont d'office au masculin (Eh ouai!), par contre, si c'est Madame ou Mademoiselle qui est choisi par l'OptionButton, les terme veuf, époux ou divorcé doivent être veuve, épouse ou divorcée.

A priori, la condition SI n'est pas adaptée, ou alors, comme d'habitude, je ne sais pas l'employer convenablement.

Merci de votre réponse.
 

Dull

XLDnaute Barbatruc
Re : Plusieurs OptionBuuton dans diverses frames

Salut Marboi, Hasco, le Forum

Met un condition sur le Click de l'OptionButton

ton Fichier en retour

Bonne Journée
 

Pièces jointes

  • Mairie3.zip
    12.5 KB · Affichages: 30
Dernière édition:
G

Guest

Guest
Re : Plusieurs OptionBuuton dans diverses frames

Marboi,

Pour rester dans l'esprit de ce que nous avons fait plus haut tu peux:
If Option1=1 or Option1=4 then
.range("B4")=Choose(Option2, "Divorcé", "Veuf", "Epoux", "Célibataire")
Else
.range("B4")=Choose(Option2, "Divorcée", "Veuve", "Epouse", "Célibataire")
End if

A bientôt
 

Marboi

XLDnaute Occasionnel
Re : Plusieurs OptionBuuton dans diverses frames

Bonjour Dull, Hasco, le Forum,

Ah bah ça alors, ça marche drolement bien. Moi qui était parti dans les conditions (je sais faire les simples) mais sur 2 conditions, j'étais encore en train de chercher sur le Forum.

Merci beaucoup, ça fait gagner un temps fou. Bonne journée.
 
G

Guest

Guest
Re : Plusieurs OptionBuuton dans diverses frames

Re bonjour Marboi,

Petit truc pour les bouton d'options.

Pas besoin d'utiliser un contrôle Frame pour isoler les différents groupes.

Tu sélectionnes les boutons d'option d'un même groupe (avec la touche CTRL) et dans leur propriété GroupName tu leur donne un nom de groupe.
Idem pour les 2 autres groupes de boutons.
Cela suffira à ce que les boutons d'un même groupe s'excluent mutuellement sans modifier ceux d'autres groupe.

A bientôt

A bientôt
 

Marboi

XLDnaute Occasionnel
Re : Plusieurs OptionBuuton dans diverses frames

Merci Hasco pour le truc.

Je vais l'utiliser pour voir... Ta fonction de choix est parfaite. Par contre pour Dull, ça change effectivement les intitulés sur l'USF mais pas dans la feuille.

Merci à vous deux.
 

Discussions similaires

Statistiques des forums

Discussions
312 322
Messages
2 087 283
Membres
103 507
dernier inscrit
tapis23