macro filtre automatique à remettre à Tous

Le
meb2604
Bonjour,

Je voudrais une macro qui remettrait les critères de tous les filtres aut=
omatiques du classeur à "Tous"

J'ai essayé avec "ActiveSheet.ShowAllData" mais elle échoue si les fil=
tres sont déjà à "Tous" dans la feuille.

En fait je voudrais dire à Excel, si un filtre n'est pas à "Tous" quelq=
ues parts dans le fichier, va le remettre à "Tous".

Pouvez-vous me venir en aide ? Merci ! Merci ! et encore Merci !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
DanielCo
Le #25298322
Bonjour,

ActiveSheet.AutoFilter

Cordialement.
Daniel


Bonjour,

Je voudrais une macro qui remettrait les critères de tous les filtres
automatiques du classeur à "Tous"

J'ai essayé avec "ActiveSheet.ShowAllData" mais elle échoue si les filtres
sont déjà à "Tous" dans la feuille.

En fait je voudrais dire à Excel, si un filtre n'est pas à "Tous" quelques
parts dans le fichier, va le remettre à "Tous".

Pouvez-vous me venir en aide ? Merci ! Merci ! et encore Merci !
MichD
Le #25298462
Bonjour,


Essaie ceci :

2 commandes possibles selon ce que tu désires faire!

'-------------------------------------------
Sub test()
Dim Sh As Worksheet
For Each Sh In Worksheets
If Sh.AutoFilterMode = True Then
'Cette commande affiche toutes les
'données mais maintient les boutons
'du filtre automatique visible
'Sh.ShowAllData 'enlève l'apostrophe pour l'activer
'OU
'Cette commande annule tout le filtre
'et supprimer les boutons du filtre
Sh.Range("_FilterDataBase").AutoFilter
End If
Next
End Sub
'-------------------------------------------



MichD
---------------------------------------------------------------
MichD
Le #25298562
Ce serait plus simple en séparant les actions :

A ) Si tu veux faire disparaître les filtres et les boutons
du filtre automatique, utilise ceci:
'-------------------------------------------------
Sub test()
Dim Sh As Worksheet
For Each Sh In Worksheets
If Sh.AutoFilterMode = True Then
Sh.Range("_FilterDataBase").AutoFilter
End If
Next
End Sub
'-------------------------------------------------

B ) Si tu veux, simplement annuler le filtre, mais en conservant
les boutons du filtre automatique, utilise cela :
'-------------------------------------------------
Sub test1()
Dim Sh As Worksheet
For Each Sh In Worksheets
If Sh.FilterMode = True Then
Sh.ShowAllData
Sh.Range("_FilterDataBase").AutoFilter
End If
Next
End Sub
'-------------------------------------------------


Dans le message précédent, si tu utilises la ligne de code
sh.showAllData , tu dois ajouter en début procédure
On Error Resume next


MichD
---------------------------------------------------------------
LSteph
Le #25298982
Bonsoir,

'...
On error resume next
ActiveSheet.ShowAllData
On error goto 0
'...

'LSteph
news:
Bonjour,

Je voudrais une macro qui remettrait les critères de tous les filtres
automatiques du classeur à "Tous"

J'ai essayé avec "ActiveSheet.ShowAllData" mais elle échoue si les filtres
sont déjà à "Tous" dans la feuille.

En fait je voudrais dire à Excel, si un filtre n'est pas à "Tous" quelques
parts dans le fichier, va le remettre à "Tous".

Pouvez-vous me venir en aide ? Merci ! Merci ! et encore Merci !
meb2604
Le #25301252
Merci à vous tous,

J'ai finalement utilisé ce que LSteph m'a proposé.

Merci !!
Publicité
Poster une réponse
Anonyme