CheckBox : obligation de cocher qu'une seule case [Résolu]

Messages postés
58
Date d'inscription
jeudi 5 juin 2014
Dernière intervention
2 juillet 2014
- - Dernière réponse : SandraMt
Messages postés
58
Date d'inscription
jeudi 5 juin 2014
Dernière intervention
2 juillet 2014
- 27 juin 2014 à 08:48
Bonjour,

Il y a plusieurs CheckBox dans mon UserForm d'accueil.

Je voudrait que l'utilisateur ne puisse cocher qu'une seule case.

Comment dois-je m'y prendre?

Merci par avance !
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
23596
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 décembre 2018
1
Merci
Bon... aller... je vais être gentil...

Voici comment tu peux faire :

Code à placer dans ton USERFORM
Private Sub onlyOneChkB(Selectedchkb As String)
 Dim cCont As Control
 If Me.Controls(Selectedchkb).Value = True Then
 For Each cCont In Me.Controls
        If TypeName(cCont) = "CheckBox" Then  
            If cCont.Name <> Selectedchkb Then
               cCont.Value = False
            End If
        End If
     Next cCont
End If
End Sub



Et ensuite... pour chacune de tes Checkbox... tu places cette ligne de code:
 onlyOneChkB (Me.CheckBox1.Name)


En remplacçant "CheckBox1" par le nom de la checkBox dans laquelle tu as mis cette fonction..

Par exemple :

'Ma première checkBox
Private Sub CheckBox1_Click()
    onlyOneChkB (Me.CheckBox1.Name)
End Sub

'Une deuxième CheckBoxe
Private Sub CheckBox2_Click()
    onlyOneChkB (Me.CheckBox2.Name)
End Sub

'Etc...


Merci jordane45 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 105 internautes ce mois-ci

SandraMt
Messages postés
58
Date d'inscription
jeudi 5 juin 2014
Dernière intervention
2 juillet 2014
-
Nickel ! c'est parfait Jordane45 !

Merci beaucoup
Commenter la réponse de jordane45
Messages postés
23596
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 décembre 2018
0
Merci
Bonjour,

Le plus simple serait de mettre des boutons radio dans ce cas...
Whismeril
Messages postés
12373
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
12 décembre 2018
-
Je plussoie
Commenter la réponse de jordane45
Messages postés
936
Date d'inscription
lundi 19 janvier 2004
Dernière intervention
17 mars 2017
0
Merci
Oui Jordane45 a raison mais sinon tu peux coller ce code à modifier bien entendu pour chaque case à cocher selon ton code.

Private Sub CheckBox1_Click()
If CheckBox1.Value = False Then
    CheckBox2.Locked = False
    CheckBox3.Locked = False
ElseIf CheckBox1.Value = True Then
    CheckBox2.Locked = True
    CheckBox3.Locked = True
Else
End If

End Sub


Edit : Ajout des balises de code ...
Whismeril
Messages postés
12373
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
12 décembre 2018
-
Enfin quand il y en a dix.....
Commenter la réponse de valtrase

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.