XL 2016 Utiliser une Checkbox pour afficher/Masquer d'autres Checkbox

babooche

XLDnaute Nouveau
Bonjour,

Je souhaite utiliser une macro afin que lorsque je coche la checkbox "Témoin" (Cellule D2), les checkbox 'Option1" (Cellule C3), "Option2" (Cellule C4), "Option..." soient visibles, sinon elles sont invisibles.

Il me semblait que c'était relativement simple :
- Nommer l'objet : ici les checkbox
- Puis lancer la macro suivante

VB:
Private Sub Temoin_Click()
Option1.Visible = IIf(Temoin.Value = True, 1, 0)
End Sub

Je pense que mon problème vient des checkbox qui ne sont pas trouvées par la macro mais pas de la macro elle même.
Est ce que je me trompe ? Pouvez vous m'aider à fixer le probleme?

Merci d'avance
 

Pièces jointes

  • NoteCadrage.xlsm
    19.2 KB · Affichages: 6

Hasco

XLDnaute Barbatruc
Repose en paix
Bonsoir,

Aimant mes vieilles habitudes j'ai renommé vos objets en les préfixant par shp (pour shape).
C'est bête mais dans un long programme cela peut indiquer très vite à quoi on à affaire.
La macro se trouve dans un module de code général.

Bonne soirée
 

Pièces jointes

  • NoteCadrage.xlsm
    19.8 KB · Affichages: 10

patricktoulon

XLDnaute Barbatruc
bonjour a tous
@Roblochon bien vu le test typename je n'y aurais pas pensé
mais on peut se passer des goto et/ou exit sub ;)
VB:
Public Sub Temoin_Click()
'
' Vérification de l'appelant de la macro
    If TypeName(Application.Caller) = "String" Then
        '
        ' Vérification du nom de l'appelant
        If Application.Caller = "shpTémoin" Then
            With ActiveSheet.Shapes
                .Range(Array("shpOption1", "shpOption2")).Visible = (.Item(Application.Caller).ControlFormat.Value = 1)
            End With
        End If
    End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 902
Membres
101 834
dernier inscrit
Jeremy06510