En bref
- =FILTRE(tableau; inclure; [si_vide]) renvoie les lignes d'un tableau pour lesquelles le test d'« inclure » est VRAI.
- Pour combiner des critères, multipliez les conditions entre parenthèses pour un ET, additionnez-les pour un OU.
- Renseignez toujours le troisième argument : sans lui, une recherche sans résultat provoque l'erreur #CALC!.
- Le résultat se déverse dans les cellules voisines et se redimensionne avec un tableau Excel et ses références structurées.
- La fonction existe dans Microsoft 365, Excel 2021 et Excel 2024, mais pas dans les versions plus anciennes.
Table des matières
À quoi sert la fonction FILTRE ?
Le filtre classique d'Excel, celui des flèches dans les en-têtes, masque les lignes qui ne vous intéressent pas. Le tableau d'origine reste le même, simplement partiellement caché. La fonction FILTRE fait autre chose : elle construit un nouveau tableau, à l'endroit de votre choix, qui ne contient que les lignes retenues. Les données sources ne bougent pas.
Cette différence change beaucoup de choses au quotidien :
- vous pouvez afficher plusieurs extractions différentes sur la même feuille, côte à côte ;
- le résultat est recalculé automatiquement à chaque modification des données, sans réappliquer de filtre ;
- vous pouvez brancher le résultat dans d'autres formules (somme, moyenne, graphique, tri) ;
- vous pouvez bâtir un petit tableau de bord où l'utilisateur change une cellule de critère et voit la liste se mettre à jour.
Pour un analyste qui prépare un rapport chaque semaine, ou un responsable qui veut sortir « les commandes de sa région supérieures à un seuil », c'est l'une des fonctions qui font gagner le plus de temps.
La syntaxe, argument par argument
Selon Microsoft, la fonction s'écrit =FILTRE(tableau; inclure; [si_vide]). Dans une version d'Excel en français, le séparateur d'arguments est le point-virgule. Dans la version anglaise (FILTER), c'est la virgule, comme dans la page en anglais de la même documentation.
| Argument | Rôle | Obligatoire |
| tableau | La plage ou la matrice à filtrer | Oui |
| inclure | Un test qui renvoie VRAI ou FAUX pour chaque ligne (ou colonne) | Oui |
| si_vide | La valeur affichée si aucune ligne ne correspond | Non, mais recommandé |
L'argument « inclure » est le plus déroutant au début. Ce n'est pas une liste de valeurs : c'est une matrice de VRAI/FAUX de même hauteur que le tableau. Quand vous écrivez
C2:C100="Paris", Excel évalue chaque cellule de la colonne C et produit une colonne de VRAI et de FAUX. FILTRE ne garde que les lignes où la valeur est VRAI.
Un premier exemple pas à pas
Imaginons une liste de ventes en A2:D100 : date, commercial, ville, montant. Pour extraire toutes les ventes réalisées à Paris :
=FILTRE(A2:D100; C2:C100="Paris"; "Aucune vente")
Saisissez la formule dans une seule cellule, par exemple F2. Excel écrit le résultat sur quatre colonnes et autant de lignes que nécessaire, à partir de F2. Vous n'avez rien à recopier ni à étirer.
Vous pouvez aussi remplacer le texte « Paris » par une référence de cellule : =FILTRE(A2:D100; C2:C100=H1; "Aucune vente"). Il suffit alors de changer la valeur de H1 pour obtenir une autre ville. C'est la base d'un petit rapport interactif.
Comparer avec un seuil
Les opérateurs habituels fonctionnent dans « inclure » : >, <, >=, <=, <>. Pour garder les ventes supérieures à 5 000 :
=FILTRE(A2:D100; D2:D100>5000; "Aucune vente")
Si vous voulez ne renvoyer que certaines colonnes, vous pouvez réduire l'argument « tableau » : =FILTRE(B2:B100; D2:D100>5000; "Aucune vente") ne renvoie que les noms des commerciaux concernés.
Filtrer avec plusieurs critères : ET et OU
C'est la question qui revient le plus. La documentation Microsoft explique que la multiplication (*) entre parenthèses agit comme un ET : toutes les conditions doivent être vraies. L'addition (+) agit comme un OU : une seule condition vraie suffit. Le même texte donne l'exemple d'une multiplication de deux tests pour ne conserver que les lignes qui satisfont les deux critères.
Condition ET
Ventes à Paris et supérieures à 5 000 :
=FILTRE(A2:D100; (C2:C100="Paris")*(D2:D100>5000); "Aucune vente")
Chaque test donne une colonne de VRAI/FAUX. Multipliées, ces colonnes donnent 1 seulement quand les deux tests sont vrais, et 0 sinon. Excel traite 1 comme VRAI et 0 comme FAUX.
Condition OU
Ventes à Paris ou à Lyon :
=FILTRE(A2:D100; (C2:C100="Paris")+(C2:C100="Lyon"); "Aucune vente")
Là, la somme vaut 1 si l'un des tests est vrai, ce qui suffit à garder la ligne. Les parenthèses sont indispensables : sans elles, la priorité des opérateurs fausse le résultat.
Mélanger ET et OU
Pour « Paris ou Lyon, avec un montant supérieur à 5 000 », combinez les deux :
=FILTRE(A2:D100; ((C2:C100="Paris")+(C2:C100="Lyon"))*(D2:D100>5000); "Aucune vente")
Le OU est regroupé dans sa propre paire de parenthèses, puis multiplié par le test du montant. Si ces logiques booléennes vous semblent abstraites, entraînez-vous d'abord avec les exercices sur les fonctions ET, OU et OUX : la logique est la même, et un retour immédiat vous dit si votre formule est bonne.
Filtrer selon une liste de valeurs
Peut-on filtrer en fonction d'une liste, par exemple une liste de villes à retenir dans une autre plage ? Avec FILTRE, on combine généralement un test d'appartenance à la liste dans l'argument « inclure ». Sans les fonctions dynamiques, Excel propose une autre voie : le filtre avancé. D'après Microsoft, il faut créer une plage de critères avec les étiquettes de colonnes et les valeurs sur des lignes distinctes, puis choisir Données > Avancé, pour filtrer sur place ou copier le résultat ailleurs.
Attention : Microsoft précise que le filtre avancé ne se met pas à jour automatiquement quand les critères changent. C'est la principale raison de préférer FILTRE quand votre version d'Excel le permet : la formule se recalcule, le filtre avancé doit être relancé.
FILTRE ou filtre automatique : lequel choisir ?
Les deux outils se complètent plus qu'ils ne s'opposent.
| Besoin | Meilleur outil |
| Explorer rapidement une liste, cocher quelques valeurs | Filtre automatique (Données > Filtrer) |
| Produire une extraction fixe qui se met à jour seule | Fonction FILTRE |
| Garder plusieurs extractions sur la même feuille | Fonction FILTRE |
| Travailler sur un fichier ouvert dans une ancienne version d'Excel | Filtre automatique ou filtre avancé |
| Alimenter un graphique ou une autre formule | Fonction FILTRE |
Pour le filtre automatique, la procédure officielle est simple. Selon la
documentation Microsoft, vous sélectionnez une cellule de la plage, vous choisissez Données > Filtrer, puis vous utilisez la flèche de l'en-tête pour sélectionner les valeurs à afficher ou appliquer un filtre de texte ou de nombres. Pour retenir plusieurs valeurs dans une colonne,
Microsoft indique de décocher « Sélectionner tout », de cocher les valeurs voulues, puis de valider avec OK.
Si vous voulez maîtriser ces filtres de tableau avant de passer aux formules, les exercices sur les filtres de tableau sont un bon point de départ.
Plage dynamique et déversement
Quand FILTRE est le résultat final d'une formule, il renvoie une matrice qui « se déverse » : Excel crée dynamiquement la plage de la bonne taille, comme l'explique Microsoft. Vous voyez alors un contour bleu autour du résultat quand vous cliquez dans la cellule d'origine.
Trois points pratiques :
- La zone de déversement doit être libre. Si une cellule voisine contient déjà une valeur, la formule ne peut pas s'étendre et affiche une erreur de déversement. Videz les cellules gênantes.
- On référence tout le résultat avec le signe dièse. Si la formule est en F2, F2# désigne l'ensemble de la plage déversée, quelle que soit sa taille. C'est très utile pour un graphique ou un NB.SI qui doit suivre le résultat.
- Un tableau Excel garde la source à jour. Selon la documentation Microsoft, avec un tableau Excel et des références structurées, la plage se redimensionne quand des données sont ajoutées ou supprimées. Convertissez votre liste en tableau (Ctrl + T), puis écrivez par exemple =FILTRE(Ventes; Ventes[Ville]="Paris"; "Aucune vente"). Chaque nouvelle ligne saisie sous le tableau est prise en compte sans toucher à la formule.
C'est ce qu'on appelle, dans le langage courant, une plage dynamique ou un filtre dynamique : on ne gère plus des adresses de cellules figées.
Associer FILTRE à TRIER et UNIQUE
FILTRE fait partie d'une famille de fonctions dynamiques. Excel 2021 pour Windows inclut, selon Microsoft, les tableaux dynamiques et les fonctions FILTRE, TRIER, TRIERPAR, UNIQUE, SEQUENCE et ALEA.TABLEAU. On les imbrique volontiers. Pour obtenir les ventes parisiennes triées par montant décroissant :
=TRIER(FILTRE(A2:D100; C2:C100="Paris"; "Aucune vente"); 4; -1)
Le 4 désigne la quatrième colonne du résultat (le montant), et -1 demande un ordre décroissant. Pour obtenir la liste sans doublons des villes où il y a eu des ventes de plus de 5 000 : =UNIQUE(FILTRE(C2:C100; D2:D100>5000; "Aucune")).
Quelles versions d'Excel prennent en charge FILTRE ?
D'après Microsoft, FILTRE est disponible dans Excel pour Microsoft 365, Excel 2024 et Excel 2021, ainsi que dans leurs versions Mac, Excel pour iPad et iPhone, et Excel pour tablettes et téléphones Android.
L'historique est utile si vous partagez des fichiers. Les formules à tableaux dynamiques ont été introduites en 2018 et déployées pour les abonnés Microsoft 365 du canal Current en janvier 2020, selon la page Microsoft dédiée. Cette même page précise que les anciennes versions peuvent ouvrir ces formules comme des formules matricielles héritées, sans redimensionnement automatique.
Concrètement : si un collègue ouvre votre rapport avec une version ancienne d'Excel, il ne bénéficiera pas du déversement automatique. Avant de diffuser un fichier large, vérifiez la version utilisée par ses destinataires.
Pourquoi FILTRE ne fonctionne pas : les erreurs courantes
#CALC! : aucun résultat
C'est l'erreur la plus fréquente. Microsoft explique que, sans valeur de remplacement, FILTRE peut renvoyer #CALC! quand aucune ligne ne correspond, car Excel ne prend pas en charge les tableaux vides. La documentation en français recommande donc d'utiliser le troisième argument. Remplacez =FILTRE(A2:D100; C2:C100="Nantes") par =FILTRE(A2:D100; C2:C100="Nantes"; "Aucun résultat").
Si la formule renvoie #CALC! alors que vous savez que des lignes existent, vérifiez l'orthographe du critère, les espaces superflus en fin de texte et le type de données : un nombre stocké comme du texte ne sera pas égal à un nombre.
Erreur de déversement
Une cellule non vide bloque l'extension du résultat. Cliquez sur la cellule de la formule : Excel signale l'obstacle. Videz la zone ou déplacez la formule.
#REF! avec un classeur source fermé
La documentation Microsoft signale que les formules de tableau dynamique liées renvoient #REF! à l'actualisation si le classeur source est fermé. Ouvrez les deux classeurs avant de recalculer.
Tailles incohérentes
L'argument « inclure » doit avoir la même hauteur que « tableau » pour un filtrage par lignes. =FILTRE(A2:D100; C2:C50="Paris") ne fonctionne pas : alignez les plages ou, mieux, utilisez un tableau Excel pour que les dimensions restent cohérentes.
La fonction n'existe pas dans mon Excel
Si Excel affiche #NOM? ou ne propose pas la fonction, soit votre version est antérieure à Excel 2021, soit votre Microsoft 365 n'est pas à jour. Dans le second cas, vérifiez les mises à jour depuis Fichier > Compte > Options de mise à jour.
Checklist rapide
- Mon Excel est-il Microsoft 365, 2021 ou 2024 ?
- La zone sous et à droite de la formule est-elle vide ?
- Mes plages « tableau » et « inclure » ont-elles la même hauteur ?
- Mon critère correspond-il exactement aux données (casse mise à part, espaces, types) ?
- Ai-je renseigné « si_vide » ?
- Mes conditions multiples sont-elles entre parenthèses ?
Notre point de vue
> Nous voyons chaque jour la même chose chez les personnes qui apprennent Excel : lire la syntaxe de FILTRE ne suffit pas, il faut l'écrire. Le piège n'est presque jamais la fonction elle-même. C'est la logique de l'argument « inclure », ces colonnes de VRAI et de FAUX qu'on ne voit pas à l'écran.
>
> C'est pourquoi nous avons construit LogicExcel autour de la pratique : de petits exercices, un environnement qui ressemble au vrai Excel, et un retour immédiat sur chaque réponse. Vous tapez la formule, vous voyez tout de suite si le résultat attendu apparaît, et vous corrigez. Ce cycle répété forge la mémoire des gestes bien mieux qu'une vidéo regardée passivement.
>
> Notre conseil : apprenez d'abord un critère simple, puis le ET, puis le OU, puis la combinaison avec TRIER. Chaque marche prend quelques minutes, et en une soirée la fonction devient un réflexe de travail.
>
> Thomas Houza
Passez de la lecture à la pratique
Vous avez la syntaxe, il reste à la manipuler. Nous proposons des exercices corrigés gratuits, sans inscription, où vous écrivez vraiment la formule dans une interface qui simule Excel. Commencez par l'exercice sur la fonction FILTRE, puis élargissez avec les exercices d'entraînement à Excel en ligne.
Si vous préférez un parcours structuré, le cours Excel gratuit, du débutant à l'avancé vous guide étape par étape. Et si vous visez ensuite une validation de vos compétences, regardez la préparation à la certification Microsoft Excel.
Pour aller plus loin
FILTRE est une porte d'entrée vers les fonctions modernes d'Excel. Quelques pistes dans l'ordre où elles servent le plus :
- Les conditions combinées. Travaillez les tests multiples avec les exercices sur RECHERCHEV avec plusieurs critères : le raisonnement sur les conditions est proche.
- Les autres fonctions avancées. Notre sélection des fonctions Excel avancées à maîtriser vous aide à choisir la suite.
- Le panorama complet. Le guide des fonctions Excel permet de retrouver chaque fonction avec sa syntaxe et ses cas d'usage.
- Les méthodes de travail. Les guides d'apprentissage Excel regroupent formules, astuces et compétences.
Un exercice à faire maintenant
Copiez une dizaine de lignes de vos propres données dans une feuille vierge (date, catégorie, responsable, montant). Convertissez-les en tableau avec Ctrl + T. Puis écrivez successivement :
- un FILTRE sur une seule catégorie, avec un message « si_vide » ;
- le même FILTRE, mais avec la catégorie lue dans une cellule ;
- un FILTRE avec deux critères reliés par ET ;
- une version avec deux catégories reliées par OU ;
- le tout enveloppé dans TRIER, par montant décroissant.
Ajoutez ensuite une ligne en bas du tableau et vérifiez que les résultats se mettent à jour. Si c'est le cas, vous avez compris le principe de la plage dynamique.
FAQ
Comment utiliser la fonction FILTRE avec plusieurs critères ?
Multipliez les conditions entre parenthèses pour un ET : (C2:C100="Paris")*(D2:D100>5000). Additionnez-les pour un OU : (C2:C100="Paris")+(C2:C100="Lyon"). Cette méthode est décrite dans la documentation Microsoft. Entourez chaque test de parenthèses pour éviter les erreurs de priorité.
Pourquoi la fonction FILTRE d'Excel ne fonctionne-t-elle pas ?
Les causes les plus fréquentes sont une version d'Excel trop ancienne, une zone de déversement occupée, des plages de hauteurs différentes ou un résultat vide sans « si_vide », qui donne #CALC!. Parcourez la checklist de la section sur les erreurs pour les vérifier dans l'ordre.
Comment filtrer dans Excel en fonction d'une liste ?
Avec une version récente, intégrez un test d'appartenance à votre liste dans l'argument « inclure » de FILTRE. Sinon, utilisez le filtre avancé : créez une plage de critères, puis Données > Avancé, comme l'indique la page Microsoft. Ce filtre ne se met pas à jour automatiquement.
Quelle est la différence entre la fonction FILTRE et le filtre automatique ?
Le filtre automatique masque des lignes dans le tableau d'origine, alors que FILTRE génère une extraction séparée qui se recalcule seule. Le premier convient à une exploration rapide, la seconde à des rapports durables et à des formules en cascade.
Dans quelles versions d'Excel trouve-t-on FILTRE ?
Elle est disponible dans Excel pour Microsoft 365, Excel 2024 et Excel 2021, ainsi que dans leurs versions Mac et mobiles, selon la page de support Microsoft. Les versions plus anciennes ne la proposent pas.
Sources
Recommandations