Sub Affiche()
Dim prenom$, vis As Boolean, t, s As Object, nom$, i%
Application.ScreenUpdating = False
With Sheets("Liste")
With .DrawingObjects(Application.Caller)
prenom = .Text
vis = .Value = xlOn
End With
t = .[A4].CurrentRegion.Resize(, 6) 'tableau VBA, plus rapide
For Each s In Sheets
nom = Replace(s.Name, "é", "e")
If nom <> .Name Then
For i = 2 To UBound(t)
If t(i, 1) & " " & t(i, 2) = nom And t(i, 6) = prenom Then s.Visible = vis: Exit For
Next i
End If
Next s
.Activate
End With
End Sub