Sub Bouton()
If ActiveSheet.DrawingObjects("Bouton 3").Text Like "Tout*" Then
ActiveSheet.DrawingObjects("Bouton 3").Text = "ANNIVERSAIRES"
On Error Resume Next
ActiveSheet.ShowAllData
Else
ActiveSheet.DrawingObjects("Bouton 3").Text = "Tout afficher"
[A:D].Sort [D1], xlAscending, Header:=xlYes 'tri
[E2].Formula = "=AND(DATE(YEAR(TODAY()),MONTH(B2),DAY(B2))>=TODAY(),DATE(YEAR(TODAY()),MONTH(B2),DAY(B2))<TODAY()+31)+(DATE(YEAR(TODAY())+1,MONTH(B2),DAY(B2))<TODAY()+31)"
[A:D].AdvancedFilter xlFilterInPlace, [E1:E2]
[E2] = ""
End If
End Sub