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
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
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
Du au fait qua application.caller renvoie le nom du shape et non le nom du groupe.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.
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