Bloquer checkbox si 2 autres sont déjà cochés

joums

XLDnaute Occasionnel
Bonjour à tous,

je bloque sur un code vba où je souhaite bloquer un checkbox si 2 autres sont déjà cochés. l'ensemble est dans un userform
Voici le code que j'ai commencé
Code:
Dim Ctrl As Control
 Dim I As Integer
 For Each Ctrl In UserForm1.Controls
  If TypeName(Ctrl) = "CheckBox" Then
    If Ctrl.Value = True Then
                                      I = I + 1 ' boucle sur les checkbox pour connaitre leur nombre

               Elseif I = 2 then  
                                    Ctrl.Value = false
               End if
   
    End If
 
End If
 Next Ctrl

Qu'en pensez vous ? Car cela ne marche pas
Merci de votre aide
 

joums

XLDnaute Occasionnel
Re : Bloquer checkbox si 2 autres sont déjà cochés

Bonjour,
merci pour votre aide, j'ai également avancé en ayant indiqué le même code que vous mais cela ne marche toujours pas.
En effet, si on coche la checkbox1 et 2 impossible de sélectionner la 3 et 4 => OK :D
mais si on coche la checkbox2 et 3 on peut sélectionner la 1 => :confused:

je devrais peut être contourner le problème en donnant un nombre maximal de case à cocher ?
Mais comment faire ? en utilisation la propriété enable ?
 

job75

XLDnaute Barbatruc
Re : Bloquer checkbox si 2 autres sont déjà cochés

Bonjour joums, mecano41,

Avec un module de classe dans le fichier joint.

A+
 

Pièces jointes

  • CheckBox(1).xls
    32 KB · Affichages: 105
  • CheckBox(1).xls
    32 KB · Affichages: 103
  • CheckBox(1).xls
    32 KB · Affichages: 102

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 187
dernier inscrit
ebenhamel