Merci AMIR, j'ai testé ta macro "Test2" mais ça me fait le même problème qu'avec ma macro, quand le rectangle 12 se démasque les forme 13 à 24 se masquent et inversement.
J'ai réussis en modifiant legerement le code:
Sub PREVISION_Rectangle1_Cliquer()
If Worksheets("PREVISION").Shapes("Rectangle 12").Visible = True Then
Range("AH4").Value = 1
Else: Range("AH4").Value = 0
End If
Dim r As Integer, rec
For r = 12 To 23
Set rec = Worksheets("PREVISION").Shapes("Rectangle " & r)
If Range("AH4").Value = 1 Then
rec.Visible = False
Else
rec.Visible = True
End If
Next
End Sub