Autres (RESOLU)Masquer / Afficher des boutons par clic

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Solution
Re,
Ou avec un seul bouton.
Permet d'avoir deux macros distinctes pour traiter les actions Valider et Effacer, avec :
VB:
Sub Appui_Bouton()
    Nom = Application.Caller
    With ActiveSheet.Shapes(Nom)
        If .TextFrame.Characters.Text = "Valider" Then
            .Fill.ForeColor.RGB = RGB(110, 170, 70)
            .TextFrame.Characters.Text = "Effacer"
            Macro_Valider
        Else
            .Fill.ForeColor.RGB = RGB(240, 120, 50)
            .TextFrame.Characters.Text = "Valider"
            Macro_Effacer
        End If
    End With
End Sub
Bonjour Chaelie,
Une solution simple parmi d'autres :
VB:
Sub ONOFF_Effacer()
    ActiveSheet.Shapes("Groupe 1").Visible = False
    ActiveSheet.Shapes("Groupe 5").Visible = True
End Sub
Sub ONOFF_Valider()
    ActiveSheet.Shapes("Groupe 1").Visible = True
    ActiveSheet.Shapes("Groupe 5").Visible = False
End Sub
 

Pièces jointes

Re,
Ou avec un seul bouton.
Permet d'avoir deux macros distinctes pour traiter les actions Valider et Effacer, avec :
VB:
Sub Appui_Bouton()
    Nom = Application.Caller
    With ActiveSheet.Shapes(Nom)
        If .TextFrame.Characters.Text = "Valider" Then
            .Fill.ForeColor.RGB = RGB(110, 170, 70)
            .TextFrame.Characters.Text = "Effacer"
            Macro_Valider
        Else
            .Fill.ForeColor.RGB = RGB(240, 120, 50)
            .TextFrame.Characters.Text = "Valider"
            Macro_Effacer
        End If
    End With
End Sub
 

Pièces jointes

Bonjour,

Tant qu'on y est, je propose un mélange de #2 et #4 en pièce jointe. 😉


Le classeur de #5 de sylvanu me semble parfait.
Ceci dit, je viens de constater un truc bizarre chez moi, et vu que je ne sais pas comment on crée un joli bouton comme tu as fait avec le rond et le texte, du coup je ne sais pas si ce comportement est normal ou pas : quand je clique sur le rond, j'ai la première lettre qui apparait dans le rond et l'intérieur du rond qui change de couleur.
 

Pièces jointes

Dernière édition:
Re,
TooFatBoy a dit :
Ceci dit, je viens de constater un truc bizarre chez moi, et vu que je ne sais pas comment on crée un joli bouton comme tu as fait avec le rond et le texte, du coup je ne sais pas si ce comportement est normal ou pas : quand je clique sur le rond, j'ai la première lettre qui apparait dans le rond et l'intérieur du rond qui change de couleur.
Du au fait qua application.caller renvoie le nom du shape et non le nom du groupe.
Donc obligé de référencer en dur le nom du shape, ce que je voulais éviter. 🙄
VB:
Sub Appui_Bouton()
    NomRectangle = "Rectangle à coins arrondis 2"
    With ActiveSheet.Shapes(NomRectangle)
        If .TextFrame.Characters.Text = "Valider" Then
            .Fill.ForeColor.RGB = RGB(110, 170, 70)
            .TextFrame.Characters.Text = "Effacer"
            Macro_Valider
        Else
            .Fill.ForeColor.RGB = RGB(240, 120, 50)
            .TextFrame.Characters.Text = "Valider"
            Macro_Effacer
        End If
    End With
End Sub
 

Pièces jointes

Application.caller renvoie le nom de l'objet sur lequel on a cliqué.
Le "dessin" de Chaelie est construit par deux shapes: un rectangle et un rond. Les deux groupés dans "Groupe15"
Moi, naïvement, je pensais que Application.caller me renverrais "Groupe15".
Que nenni, il renvoie soit "Rectangle..." ou "Ellipse..." donc je ne traitais que le shape donné par application.caller.
Donc si on cliqué sur le rond, j'exécutais la macro sur le rond, et non sur le rectangle.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
118
Réponses
3
Affichages
153
  • Question Question
Réponses
6
Affichages
317
Retour