Alternatives aux filtres

Si vous utilisez des tables, vous connaissez déjà certainement les filtres "classiques".

Mais saviez vous que :

Clic droit

Vous pouvez filtrer avec un clic droit sur une cellule de la table, puis choisir Filtrer et choisir Filtrer par la valeur de la cellule sélectionnée :

Bouton de filtre automatique

2/ Vous pouvez faire la même chose, mais en un clic, après avoir ajouté le bouton de filtre automatique dans la barre d'accès rapide :

Puis, vous cliquez sur la cellule et vous filtrez automatiquement.

Note : ce bouton est différent du bouton "Ajouter ou supprimer des filtres", qui a le même icône.

Aussi, ce bouton ne fonctionne pas si la plage a été formatté comme tableau.

Les segments

3/ N'oubliez pas le pouvoir des segments associés à une table.

a/ Formattez comme tableau :

b/ Ajoutez un segment

Et voilà !

Une solution enVBA pour un tableau

Evidemment, comme la 2e solution ne fonctionne pas pour un tableau et que la première solution requiert 3 clics, le paresseux en moi a décidé d'ajouter un bouton pour quand même faire ca en un clic.

Le code est assez court, mais pas vraiment trivial. Je l'expliquerai en détail plus tard si vous êtes intéressés (n'hésitez pas à laisser un commentaire).

Cliquez ici pour télécharger le fichier.

Et le code pour ces deux boutons :

 
Option Explicit
Sub subFiltreTableauActiveCell()
If ActiveCell.ListObject Is Nothing Then Exit Sub
ActiveSheet.ListObjects(ActiveCell.ListObject.Name).Range.AutoFilter _
Field:=ActiveCell.Column - ActiveCell.ListObject.DataBodyRange.Column + 1, _
Criteria1:=ActiveCell.Value
End Sub
Sub subAfficheToutesLesDonnees()
If ActiveCell.ListObject Is Nothing Then Exit Sub
ActiveSheet.ListObjects(ActiveCell.ListObject.Name).AutoFilter.ShowAllData
End Sub


Amusez-vous bien !

PS : Bien que ces fonctionalités soient connues depuis excel 2003, voici une partie de la source d'inspiration : https://www.mrexcel.com/excel-tips/excel-2019-filter-by-selection/

Pour marque-pages : Permaliens.

4 réponses à Alternatives aux filtres

  1. Dominique HANDELSMAN dit :

    Merci infiniment.
    Je ne connaissais pas cette fonctionnalité qui peut faire économiser plusieurs secondes à chaque usage, et garantit qu’on ne clique pas sur une mauvaise case.
    Temps gagné et sécurité du geste sont des objectifs ergonomiques majeurs.

    L’esprit vif, curieux, pratique de Gaetan Mourmant nous est précieux.

  2. 78chris dit :

    Bonjour

    Merci
    Etant passé de 2002 à 2010, j’avais loupé ce filtre que j’utilise dans Access.

    Du coup je l’ai ajouté, et dans la barre d’accès rapide, et dans le clic droit du menu contextuel des tableaux pour l’avoir en 1 clic ;-).

  3. Claude Schaffran dit :

    Bonjour
    super macro !
    j’ai rajouté une procédure pour utiliser un seul bouton:
    Sub filtrer_defiltrer()
    If ActiveSheet.FilterMode = True Then
    subAfficheToutesLesDonnees
    Else
    subFiltreTableauActiveCell
    End If
    End Sub

    🙂

  4. Gaetan Mourmant dit :

    Merci, j’avais laissé deux boutons pour pouvoir filtre sur “c”, puis ensuite sur “15”, par exemple.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.