Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Afficher / masquer forme suivant case à cocher

tontonexcel

XLDnaute Occasionnel
Bonjour à tous,

J'ai une petite macro qui me permet d'afficher ou de masquer une forme nommée "forme1" suivant l'état d'une case à cocher dans la feuille, j'ai copié la forme1 en forme2 donc logiquement le nom affecté est le même

Ma question est la suivante : pourquoi la forme 2 n'est elle pas en lien avec la forme 1 par rapport à la macro

Merci beaucoup pour vos réponses
La macro est dans la Feuil1
 

Pièces jointes

  • demo case coche.xls
    19.5 KB · Affichages: 39

job75

XLDnaute Barbatruc
Re : Afficher / masquer forme suivant case à cocher

Bonjour tontonexcel,

Si des Shapes portent le même nom il faut toutes les étudier :

Code:
Private Sub case_01_Click()
Dim s As Shape
For Each s In Me.Shapes
If s.Name = "forme1" Then s.Visible = case_01
Next
End Sub
A+
 

tontonexcel

XLDnaute Occasionnel
Re : Afficher / masquer forme suivant case à cocher

Bonjour Job75,

Merci pour ta réponse rapide, juste une simple question quelle est l'utilité réelle de Me (puisqu'il n'y a pas de formulaire) ?

Merci encore !!
 

job75

XLDnaute Barbatruc
Re : Afficher / masquer forme suivant case à cocher

Re,

Sinon, si l'on veut lier les 2 formes, il faut les grouper :

Code:
Private Sub case_01_Click()
Me.Shapes("Groupe 1").Visible = case_01
End Sub
Fichier joint.

A+
 

Pièces jointes

  • demo case coche(1).xls
    37 KB · Affichages: 43

Bebere

XLDnaute Barbatruc
Re : Afficher / masquer forme suivant case à cocher

bonjour tontonexcel,job
une autre si tu as forme1,forme2,etc
Code:
Option Explicit
Dim sh As Shape

Private Sub case_01_Click()
    For Each sh In Feuil1.Shapes
        If Left(sh.Name, 5) = "forme" Then sh.Visible = case_01.Value
    Next sh
End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…