VBA Excel 2010 : Supprimer tout les filtres à la fermeture [Résolu/Fermé]

Signaler
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
-
 ExpertExcel -
Bonjour à tous,

J'aimerais créer une macro qui permet de supprimer tout les filtres qui ont pu être appliquer sur le fichier soir à la fermeture de celui-ci, soit à l'ouverture, afin d'être sur d'ouvrir le fichier sans aucun filtre actif.

Je ne sais pas si ça à une importance, mais mes filtres sont sur la ligne 3 et vont de la colonne B à la colonne AH.

Merci d'avance :)

4 réponses

Messages postés
15347
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 septembre 2020
1 360
Bonjour,

une facon de faire a l'ouverture du fichier

code dans thisworkbook sauvegarder fichier en xlsm

Private Sub Workbook_Open()
    For i = 1 To Sheets.Count
        Sheets(i).Select
        Cells.Select
        Selection.AutoFilter
    Next
End Sub


ou a la fermeture

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    For i = 1 To Sheets.Count
        Sheets(i).Select
        Cells.Select
        Selection.AutoFilter
    Next
End Sub


Bonne suite
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Ok, merci beaucoup :)
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour à tous,

Je reviens vers vous car je viens de me rendre compte (mieux vaut tard que jamais) que je m'étais mal exprimé.

Je ne souhaite pas la suppression de l'outils filtre, juste la remise par défaut de ceux-ci sur mes 2 premières pages (les autres étant des graphiques).

J'espère m'être bien exprimé cette fois,

Merci d'avance et bonne journée
Voici une solution simple

Dim i as integer
Const NBR_FEUILLES = 2

on error resume next
' obligatoirement les 2 première feuilles de ton classeur
For i = 1 to NBR_FEUILLES
worksheets(i).cells.AutoFilter ' efface les filtre
worksheets(i).cells.AutoFilter ' le remet par défaut
next

Fred
http://expertise-excel.com/