FILTRE (FILTER en anglais) est une des fonctions dynamiques les plus puissantes arrivées avec Excel 365. Elle extrait automatiquement du tableau source toutes les lignes qui correspondent à tes critères, et le résultat se met à jour en temps réel quand tes données changent.
Fini les filtres manuels à réappliquer à chaque modification : avec FILTRE, tu crées une vue filtrée qui reste toujours synchronisée avec tes données sources. C'est particulièrement puissant pour créer des tableaux de bord interactifs, des rapports automatiques ou des listes de produits en rupture. Tu peux extraire les ventes d'une seule région, identifier les candidats qui cochent plusieurs critères à la fois, signaler les départements ayant dépassé leur budget, ou encore croiser des conditions avec de simples multiplications et additions.
Syntaxe de la fonction FILTRE
=FILTRE(tableau; inclure; [si_vide])Comprendre chaque paramètre de la fonction FILTRE
Le réflexe à prendre : tu passes la plage entière à tableau, puis tu poses ta condition sur une seule colonne dans inclure. Avec =FILTRE(A2:E100; C2:C100="Paris"), tu testes la colonne C mais tu récupères bien tout, de A à E.
Ces deux premiers arguments sont obligatoires. Le troisième, [si_vide], est facultatif et c'est lui qui décide ce qui s'affiche quand aucune ligne ne colle, plutôt que de te laisser une erreur brute.
tableau
: la plage de données à filtrerTu peux spécifier une seule colonne comme A2:A100 ou un tableau complet comme A2:E100. La fonction retournera toutes les colonnes spécifiées pour les lignes qui correspondent au critère.
Si tu veux filtrer un tableau structuré (Tableau Excel mis en forme via Ctrl+T), tu peux utiliser son nom directement. FILTRE retourne alors toutes les colonnes de la ligne correspondante, ce qui évite de jongler avec les numéros de colonnes.
Astuce : Pour filtrer selon une colonne précise tout en retournant tout le tableau, utilise la même référence de ligne : =FILTRE(A2:E100; C2:C100="Paris"). Tu filtres selon la colonne C mais tu récupères les colonnes A à E pour chaque ligne correspondante.
inclure
: ta condition de filtrageElle doit retourner VRAI ou FAUX pour chaque ligne du tableau. Par exemple, B2:B100>1000 retournera VRAI pour les lignes où la colonne B est supérieure à 1000.
Tu peux combiner plusieurs conditions avec * (ET logique : les deux doivent être vraies) ou + (OU logique : au moins une doit être vraie). Par exemple, (B2:B100>1000) * (C2:C100="Paris") sélectionne les lignes où B est supérieur à 1000 ET C est égal à "Paris". La plage de la condition doit avoir le même nombre de lignes que ton tableau.
[si_vide]
: la valeur à afficher si aucune ligne ne correspond à ton critère(facultatif)Sans ce paramètre, FILTRE retourne l'erreur #CALC! quand il n'y a pas de résultat.
Tu peux mettre un message comme "Aucun résultat trouvé", un 0, ou même "" pour une cellule vide. C'est très utile pour rendre tes rapports plus professionnels et éviter que tes utilisateurs s'inquiètent d'une erreur.
Astuce : Utilise toujours le 3ème argument si_vide pour gérer le cas sans résultat : =FILTRE(tableau; critère; "Aucun résultat"). C'est une bonne pratique qui rend tes formules plus robustes.
Pas envie d'écrire la formule FILTRE à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Commercial : extraire les ventes d'une région spécifique
Tu es commercial et tu gères les ventes de plusieurs régions. Tu veux créer un rapport qui affiche automatiquement uniquement les ventes de la région Nord pour ton suivi hebdomadaire.
| A | B | C | |
|---|---|---|---|
| 1 | Client | Région | Montant |
| 2 | Entreprise ABC | Nord | 2 500 € |
| 3 | Société XYZ | Sud | 1 800 € |
| 4 | Client Pro | Nord | 3 200 € |
| 5 | Startup Tech | Est | 950 € |
| 6 | Mega Corp | Nord | 4 100 € |
=FILTRE(A2:C6; B2:B6="Nord")La fonction teste la colonne Région et conserve toutes les lignes où elle vaut « Nord », puis déverse le résultat sur les cellules du dessous : trois lignes ici (Entreprise ABC, Client Pro, Mega Corp) avec leurs trois colonnes. Toute nouvelle vente dans le Nord viendra s'ajouter automatiquement.
Gestionnaire de stock : identifier les produits en rupture
Tu es gestionnaire de stock et tu veux créer un tableau de bord qui affiche en temps réel tous les produits dont le stock est inférieur à 50 unités pour anticiper les commandes.
| A | B | C | |
|---|---|---|---|
| 1 | Produit | Stock | Seuil critique |
| 2 | Clavier mécanique | 35 | ALERTE |
| 3 | Souris sans fil | 150 | OK |
| 4 | Écran 24" | 12 | ALERTE |
| 5 | Webcam HD | 200 | OK |
| 6 | Casque audio | 48 | ALERTE |
=FILTRE(A2:C6; B2:B6<50; "Stock OK")Ici, la fonction ne garde que les lignes dont le stock passe sous 50 et renvoie les trois produits concernés : Clavier mécanique (35), Écran 24" (12) et Casque audio (48). Le 3e argument prend le relais si aucune ligne ne correspond, affichant « Stock OK » au lieu de l'erreur #CALC!.
RH : filtrer les candidats avec plusieurs critères
Tu travailles aux ressources humaines et tu cherches des candidats qui ont au moins 3 ans d'expérience ET qui parlent anglais. Tu veux automatiser cette recherche dans ta base de CV.
| A | B | C | |
|---|---|---|---|
| 1 | Nom | Expérience | Anglais |
| 2 | Sophie Martin | 5 ans | Oui |
| 3 | Thomas Durand | 2 ans | Oui |
| 4 | Marie Lambert | 4 ans | Non |
| 5 | Lucas Bernard | 6 ans | Oui |
| 6 | Emma Petit | 1 an | Oui |
=FILTRE(A2:C6; (B2:B6>=3) * (C2:C6="Oui"))La formule croise deux conditions reliées par une multiplication, qui agit comme un ET logique (au moins 3 ans d'expérience ET anglais = « Oui »). Seules Sophie Martin et Lucas Bernard satisfont les deux en même temps et apparaissent dans le résultat.
Contrôleur de gestion : extraire les dépenses dépassant le budget
Tu es contrôleur de gestion et tu dois identifier rapidement tous les départements qui ont dépassé leur budget mensuel pour organiser une réunion de régulation budgétaire.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Département | Budget | Dépensé | Écart |
| 2 | Marketing | 50 000 € | 54 000 € | +4 000 € |
| 3 | IT | 35 000 € | 32 000 € | -3 000 € |
| 4 | RH | 25 000 € | 28 500 € | +3 500 € |
| 5 | Ventes | 60 000 € | 58 000 € | -2 000 € |
| 6 | Production | 80 000 € | 85 000 € | +5 000 € |
=FILTRE(A2:D6; C2:C6>B2:B6; "Tous les budgets respectés")Ici, la condition compare deux colonnes ligne par ligne et ne retient que celles où le dépensé (C) dépasse le budget (B) : Marketing, RH et Production ressortent. Le 3e argument afficherait « Tous les budgets respectés » plutôt qu'une erreur si aucun dépassement n'était détecté.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction FILTRE
Quand FILTRE renvoie un #CALC!, c'est en général qu'aucune ligne ne correspond à ton critère : le remède, c'est le 3e argument si_vide que tu as oublié de mettre. Le #VALEUR! raconte autre chose : ta plage de condition et ton tableau n'ont pas le même nombre de lignes, un C2:C5 face à un A2:B10. Et le #DÉVERSEMENT! n'a rien à voir avec ta formule, ce sont des cellules voisines déjà occupées qui empêchent le résultat de s'étaler.
#CALC! : aucun résultat ne correspond au critère
C'est l'erreur la plus courante avec FILTRE. Elle apparaît quand aucune ligne ne correspond à ton critère. Par exemple, si tu filtres par "Paris" mais qu'il n'y a que des lignes avec "Lyon", FILTRE ne peut rien retourner.
Solution : Ajoute toujours le 3e argument si_vide pour gérer ce cas : =FILTRE(tableau; critère; "Aucun résultat"). Tes formules restent robustes et professionnelles même quand le filtre ne retourne rien.
#VALEUR! : plages de tailles différentes
Cette erreur survient quand ton tableau et ta condition n'ont pas le même nombre de lignes. Par exemple, =FILTRE(A2:B10; C2:C5) ne fonctionnera pas car A2:B10 a 9 lignes mais C2:C5 seulement 4.
Solution : Vérifie que ta plage de condition couvre exactement le même nombre de lignes que ton tableau. Utilise F9 dans la barre de formule pour contrôler les références si nécessaire.
#DÉVERSEMENT! : pas assez de place pour le résultat
FILTRE a besoin de cellules vides pour « déverser » ses résultats. Si tu as des données dans les cellules en dessous ou à droite de la formule, Excel retourne cette erreur.
Solution : Déplace les données qui bloquent ou place ta formule FILTRE dans une zone avec suffisamment d'espace vide. Excel affiche un contour bleu autour de la zone de déversement pour visualiser l'espace nécessaire.
Tu cherches surtout à corriger l'erreur de débordement #SPILL! affichée dans ta cellule, sans passer par la fonction FILTRE ? Consulte la fiche dédiée à l'erreur de débordement #SPILL! pour comprendre toutes ses causes et comment la corriger.
Astuces avancées avec FILTRE
Imbrique FILTRE dans TRIER pour un rapport trié automatiquement
Pour obtenir un résultat filtré ET trié en une seule formule, imbrique FILTRE dans TRIER : =TRIER(FILTRE(A2:C100; B2:B100>1000); 3; -1). Les lignes où B dépasse 1000 sont extraites, puis triées par la 3e colonne en ordre décroissant.
Le rapport se met à jour seul dès que les données changent.
Filtre sur une partie de texte avec TROUVE
Pour filtrer par texte partiel, utilise TROUVE dans ta condition : =FILTRE(A2:C100; ESTNUM(TROUVE("Excel"; B2:B100))). ESTNUM teste si TROUVE a bien localisé le mot, ce qui retourne VRAI uniquement pour les lignes concernées.
La formule extrait toutes les lignes où la colonne B contient "Excel", quelle que soit sa position.
Branche une liste déroulante pour un filtre interactif
Place une liste déroulante en E1, puis filtre selon cette cellule : =FILTRE(A2:C100; B2:B100=$E$1; "Aucun résultat"). Le tableau se met à jour automatiquement à chaque nouvelle sélection.
Ce montage remplace un segment de tableau croisé pour des tableaux de bord légers.
FILTRE vs RECHERCHEV vs SI vs INDEX-EQUIV
Sors FILTRE dès que tu attends plusieurs lignes en retour et que le résultat doit suivre tes données en direct : RECHERCHEV et INDEX-EQUIV ne te ramènent qu'une seule correspondance, et il faut les relancer à la main.
Le vrai départage, c'est la version d'Excel : si tes destinataires sont sur une version antérieure à Office 365, FILTRE n'existe tout simplement pas chez eux, et RECHERCHEV ou INDEX-EQUIV redeviennent tes seules options.
| Critère | FILTRE | RECHERCHEV | SI | INDEX-EQUIV |
|---|---|---|---|---|
| Résultats multiples | ✅ Oui | ❌ Non (1 seul) | ❌ Non | ❌ Non (1 seul) |
| Mise à jour automatique | ✅ Dynamique | ⚠️ Manuel | ⚠️ Manuel | ⚠️ Manuel |
| Critères multiples | ✅ Facile (*, +) | ❌ Difficile | ⚠️ Complexe | ⚠️ Possible |
| Retourne toutes les colonnes | ✅ Toutes | ⚠️ Une seule | ⚠️ Une seule | ⚠️ Une seule |
| Compatibilité | ⚠️ Office 365+ | ✅ Toutes versions | ✅ Toutes versions | ✅ Toutes versions |
| Facilité d'usage | ⭐⭐⭐ | ⭐⭐ | ⭐⭐ | ⭐ |
Questions fréquentes sur la fonction FILTRE
FILTRE fonctionne-t-elle sur les versions anciennes d'Excel ?
Non, FILTRE est disponible uniquement dans Excel 365 et Excel 2021+. Si tu as une version plus ancienne, tu devras utiliser des filtres automatiques classiques ou des formules avec SI et RECHERCHEV combinées.
Comment combiner plusieurs critères avec ET dans FILTRE ?
Multiplie les conditions : =FILTRE(tableau; (colonne1="A") * (colonne2>100)). La multiplication agit comme un ET logique. Les deux conditions doivent être vraies pour que la ligne soit retournée dans le résultat.
Comment combiner plusieurs critères avec OU dans FILTRE ?
Additionne les conditions : =FILTRE(tableau; (colonne="A") + (colonne="B")). L'addition agit comme un OU logique. Il suffit qu'une des conditions soit vraie pour que la ligne apparaisse dans le résultat.
Peut-on filtrer en fonction d'une partie de texte seulement ?
Oui, utilise TROUVE ou CHERCHE dans ta condition : =FILTRE(tableau; ESTNUM(TROUVE("Paris"; colonne_ville))). Cela retournera toutes les lignes où "Paris" apparaît quelque part dans la colonne ville, même s'il fait partie d'un texte plus long.
Le résultat de FILTRE se met-il à jour automatiquement ?
Oui. FILTRE est une fonction dynamique. Si tu ajoutes, modifies ou supprimes des données dans ton tableau source, le résultat filtré se met à jour instantanément. C'est l'un de ses plus gros avantages sur les filtres manuels qui nécessitent une réapplication à chaque modification.
Pour aller plus loin
Les fonctions similaires : TRIER, UNIQUE, RECHERCHEX, SEQUENCE, PRENDRE
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

