Bonjour à tous,
Je cherche un code VBA qui me permettrait lors de la fermeture d'un fichier Excel, d'enlever tous les filtres automatiques du fichier.
Est-ce possible et comment ?
Merci par avance
Version imprimable
Bonjour à tous,
Je cherche un code VBA qui me permettrait lors de la fermeture d'un fichier Excel, d'enlever tous les filtres automatiques du fichier.
Est-ce possible et comment ?
Merci par avance
Voila qui devrait faire l'affaire
Code:
1
2
3
4
5
6
7
8
9 Dim sh As Worksheet For Each sh In ThisWorkbook.Worksheets sh.Select Selection.AutoFilter Next
Bonjour,
Est-ce que je peux mettre ce code dans This Workbook du projet ?
Je viens d'essayer le code, les filtres restent, ils ne s'enlèvent pas à la fermeture.
Il faut mettre ce code dans l'évenement Workbook_BeforeClose du classeur
C'est ce que j'ai fait, mais sans résultat. Il y a un message d'erreur sur la ligne
Mais je me suis peut-être mal expliqué.Code:sh.Select
En fait s'est la sélection du filtre qui doit être enlevée, non le filtre lui même.
J'ai pensé à quelque chose comme :
mais après je ne sais pas quoi mettre pour que toutes les sélections du fichier soient remises à zéro.Code:Selection.AutoFilter Field:= ? -
Euh! suis-je assez clair ? :oops:
Pour effacer la selection tu peux faire simple en virant les filtres et en les recréants
Surtout il ne faut pas oublier de sauvegarder le classeur après ce traitement si tu veux qu'a l'ouverture tes modifs soient prises en compte
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Sub Workbook_BeforeClose(Cancel As Boolean) On Error GoTo suite Dim sh As Worksheet For Each sh In ThisWorkbook.Worksheets sh.Select Selection.AutoFilter Selection.AutoFilter suite: Next ThisWorkbook.Save End Sub
C'est bon ça marche. Super :king: