Sub MASQUER1()
'
'Masquer par trie
'
ActiveWindow.SmallScroll Down:=9
Selection.AutoFilter Field:=1, Criteria1:="1"
ActiveWindow.SmallScroll Down:=-105
Range("E8").Select
[B][COLOR="Blue"]For Each sh In ActiveSheet.Shapes 'boucle tous les controles formulaires
If sh.Name Like "Drop Down*" Then 'vérifie que le controle est une liste déroulante
On Error Resume Next
'la raison de cette gestion d'erreur est que le "bouton" du filtre automatique a le même nom qu'une
'liste déroulante mais la ligne ci-dessous plante quand il s'agit du bouton de filtre
lig = sh.TopLeftCell.Row
If Err.Number = 0 Then
If sh.TopLeftCell.EntireRow.Hidden Then
sh.Visible = False
Else: sh.Visible = True
End If
End If
End If
Next sh[/COLOR][/B]
End Sub