Bonsoir MJC55,
Un essai en VBA dans le fichier joint. Si on saisit le caractère "*" en D1, alors toutes les formes sont affichées.
Le code dans le module de Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim shp As Shape, valeur
If Not Intersect(Target, Range("d1")) Is Nothing Then
valeur = CStr(Target.Value)
On Error Resume Next
Application.ScreenUpdating = False
Select Case valeur
Case "*"
For Each shp In Me.Shapes: shp.Visible = True: Next
Case Else
For Each shp In Me.Shapes: shp.Visible = shp.TextFrame2.TextRange = valeur: Next
End Select
On Error GoTo 0
End If
End Sub