Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 filtre : masquer les indicateurs de filtre sans perdre le filtrage

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous 🙂

Tien, tien, revoilou "l'usine à gaz" lol 😉
Je reviens pour le casse-neurones du WE lol ...
C'est mapomme et patricktoulon qui vont être contents lol

Comme l'indique le titre du fil : je souhaiterais pouvoir masquer les indicateurs de filtre sans perdre le filtrage.

J'ai beaucoup cherché sans trouver de solution ... enfin si, il y en a une : il suffit de mettre à hauteur 0 la 1ère ligne de filtrage.

Mon souci est que dans dans mon fichier de travail "autrement dit : ma zizine à gaz", il n'y a pas de ligne ligne que je pourrai mettre à hauteur 0.
(j'l'avais pas prévu s'coup-là Grrrr !!! 😡😡😡 purée de moi) ... Et insérer une ligne vide m'obligerait à recoder beaucoup mon fichier.

Auriez-vous une solution ? Ce serait super !

Un grand merci par avance, je joins un fichier test et je continue mes recherches.
Amicalement,
lionel 🙂
 

Pièces jointes

Solution
Re, Bonsoir Marcel, Staple,
Je persévère, je n'ai jamais eu cette idée. Formation continue 🙂
Peut être en utilisant la propriété Visibledropdown:=False
VB:
Sub FiltreData()
On Error Resume Next
    Application.ScreenUpdating = False
    T = Array(3, 4, 5, 6, 7, 9)
    With Sheets("choix").Range("A5:J10000")
        .AutoFilter Field:=1, Criteria1:="m", Visibledropdown:=False
        .AutoFilter Field:=2, Criteria1:="ca", Visibledropdown:=False
        .AutoFilter Field:=8, Criteria1:="3118", Visibledropdown:=False
        .AutoFilter Field:=10, Criteria1:="el", Visibledropdown:=False
        For i = 0 To UBound(T)
            .AutoFilter Field:=T(i), Criteria1:="*", Visibledropdown:=False
        Next i
    End With
    [a1].Select
End...

Re

Usine à gaz
Tu confirmes que tu n'avais pas vu cette zone de critères ?
(ou est-ce un ajout de sylvanu?)
Re JM : effectivement, je ne l'avais pas vu, désolé 🙂
 
aucune macro ne répond lol,
Bien sûr il faut adapter les macros au tableau structuré, fichier (2) :
VB:
Sub FiltreData()
'On Error Resume Next
    Sheets("choix").ListObjects(1).Range.AutoFilter Field:=1, Criteria1:="m"
    Sheets("choix").ListObjects(1).Range.AutoFilter Field:=2, Criteria1:="ca"
    Sheets("choix").ListObjects(1).Range.AutoFilter Field:=8, Criteria1:="3118"
    Sheets("choix").ListObjects(1).Range.AutoFilter Field:=10, Criteria1:="el"
    Sheets("choix").ListObjects(1).ShowAutoFilterDropDown = False 'décoche Bouton de filtre
    [a1].Select
End Sub

Sub NON()
'On Error Resume Next
    Sheets("choix").ListObjects(1).Range.AutoFilter
End Sub
 

Pièces jointes

bonsoir
y va tout faire peter 😂🤣
je me dis quand meme que tu dois avoir un sacré PC
parce que tu dois frôler souvent l la surchauffe
le pauvre fichier doit peiner à s'ouvrir
sans parler que tu réinitialise pas à la fermeture du fichier @job75 c'est fait avoir déjà
est ce vraiment nécessaire tout ce toin toin

bon moi j'attend dimanche pour la question dominicale bien drôle

si bill gate regardais tes trucs il en perdrais la tête
 
Re

Marcel32
J'avais mis aussi un lien vers un tuto plus élaboré.
Un barbatruc comme Lionel qui est sur XLD depuis un long bail déjà ne peut pas prétendre ne pas savoir utiliser sa souris 😉
1) je filtre 2) je clique sur Personnalisé 3) J'enregistre la vue 4) Je clique sur OK
Ensuite si besoin, je refais la manip en laissant tourner l'enregistreur de macros.
Donc aucun obstacle à ne pas réussir à part...si il est constaté une protubérance pileuse logée au milieu de la paume, séquelle d'une exposition prolongée aux gaz 😉
 
Dernière édition:
Bonjour tout le monde,
@Staple, non ce n'est pas de moi.
@lionel,
En plus simple à modifier et à écrire :
VB:
Sub FiltreData()
On Error Resume Next
    Application.ScreenUpdating = False
    ' Array par paires, N° de colonne puis filtre. Si pas de filtre mettre "*"
    T = Array(1, "m", 2, "ca", 3, "*", 4, "*", 5, "*", 6, "*", 7, "*", 8, "3118", 9, "*", 10, "El")
    For i = LBound(T) To UBound(T) Step 2
        Sheets("choix").Range("A5:J10000").AutoFilter Field:=T(i), Criteria1:=T(i + 1), Visibledropdown:=False
    Next i
    [a1].Select
End Sub
 

Pièces jointes

Bonjour à tous les participants de ce fil, Bonjour le Forum,,

Merci Sylvanu pour cette nouvelle version 🙂

Dans mon fichier de travail, j'ai besoin de filtrer jusqu'à la colonne "Z"
Pour éviter d'écrire (j'en ai une bonne dizaine) pour chaque filtrage tous les hors critères, est-il possible de raisonner à l'inverse ? :
T = Array(3, 4, 5, 6, 7, 9) = colonnes hors critères

inverser en :
T = Array(1, 2, 8) = colonnes critères
Ce serait le plus simple si c'est possible,
lionel 🙂

 
Bonjour le fil

Usine à gaz
Puisque tu testes toutes les propositions, en voici une à tester sur le fichier exemple
VB:
Sub Filtre_Avancé()
Dim vCriteres
vCriteres = Array("=RC[-11]=""M""", "=RC[-11]=""Ca""", "=RC[-6]=3118", "=RC[-5]=""El""")
Range("L6:O6").Value = vCriteres: Range("A5") = "ITEM1"
Range("L6:O6").Font.Color = vbWhite: Range("A5").Font.Color = vbWhite
Range("A5").AutoFill Destination:=Range("A5:J5"), Type:=xlFillDefault
Range("A5:J31").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("L5:O6")
End Sub
Préambule:
Normalement, un tableau contient toujours des entêtes (c'est la base)
Donc j'ai les ajouter dans le code (et formater avec police couleur blanche)
Mais si elles étaient préexistantes et déjà formatées, le code se réduit alors à
VB:
Sub Filtre_Avancé()
Range("L6:O6").Value = Array("=RC[-11]=""M""", "=RC[-11]=""Ca""", "=RC[-6]=3118", "=RC[-5]=""El""")
Range("A5:J31").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("L5:O6")
End Sub

Question existentielle du samedi matin
Pourquoi privilégier le filtre automatique pour lui dire ne pas afficher "ses fléches" alors que le filtre avancé ne les affiche pas d'emblée ?
(et offre des options supplémentaires : Extraction sans doublons et Copier vers)

Précisions: La question s'adresse au vaste monde et non point à un contributeur de ce fil ou au demandeur.
 
Bjr JM, merci pour tous ces détails et tes efforts pour activer mes neurones fatiguées lol ... je vais essayer 🙂
 
As-tu au moins vu que le masquage des flèches de filtrage se faisait en même temps que le filtrage de chaque colonne, et qu'il fallait donc dans ce cas faire un masquage à part pour les autres flèches ?!?

Si tu enlèves le masquage des flèches lors du filtrage de chaque colonne et que tu masques (avant ou après le filtrage) tes 26 flèches, tu obtiendras le même résultat, mais avec un code plus simple.

Autrement dit, tu utilises ce que je t'ai donné au départ...
Mais bon... vu que c'est moi qui te l'ai donné, c'est forcément pourri...
Donc attends que Job te donne une solution et ce sera parfait !
 
Dernière édition:
Re,
Ici on ne met que les filtres utiles.
VB:
Sub FiltreData()
On Error Resume Next
    Application.ScreenUpdating = False
    ' Array par paires, N° de colonne puis filtre.
    T = Array(1, "m", 2, "ca", 8, "3118", 10, "El")
    For i = 1 To 10
        Sheets("choix").Range("A5:J10000").AutoFilter Field:=i, Criteria1:="*", Visibledropdown:=False
    Next i
    For i = LBound(T) To UBound(T) Step 2
        Sheets("choix").Range("A5:J10000").AutoFilter Field:=T(i), Criteria1:=T(i + 1), Visibledropdown:=False
    Next i
    [a1].Select
End Sub
@lionel, le filtre avancé de Staple semble séduisant, non ?
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
709
Réponses
1
Affichages
913
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…