La fonctionFILTRE permet de filtrer une plage de données en fonction de critères que vous définissez.
Dans l’exemple suivant, nous avons utilisé la formule =FILTRE(A5:D20;C5:C20=H2;"") pour renvoyer tous les enregistrements pour Pomme, tel que sélectionné dans la cellule H2 et s’il n’y a pas de pommes, renvoyer une chaîne vide (« »).
Syntaxe
La fonction FILTRE filtre une matrice basée sur un tableau de valeur booléenne (vrai/faux).
=FILTRE(tableau; inclure; [si_vide])
| Argument | Description |
|---|---|
| matrice Obligatoire |
La matrice ou plage à trier |
| inclure Obligatoire |
Une matrice booléenne dont la hauteur ou largeur est identique à la matrice |
| [if_empty] Facultatif |
La valeur à renvoyer si toutes les valeurs dans la matrice incluse sont vides (filtre ne renvoie rien) |
Remarque
- Une matrice peut être considérée comme une ligne de valeurs, une colonne de valeurs ou une combinaison de lignes et colonnes de valeurs. Dans l’exemple ci-dessus, le tableau source pour notre formule FILTRE est la plage A5:D20.
- La fonction FILTRE renvoie une matrice qui débordera si c’est le résultat final d’une formule. Cela signifie qu’Excel crée dynamiquement la plage de tableau de dimension appropriée lorsque vous appuyez sur entrée. Si vos données de prise en charge se trouvent dans un tableau Excel, la matrice est automatiquement redimensionnée quand vous ajoutez ou supprimez des données dans votre plage de tableau si vous utilisez lesréférences structurées. Pour plus d’informations, consultez cet article sur comportement de matrice renversé.
- Si votre ensemble de données comporte le potentiel de renvoyer une valeur vide, utilisez le 3ème argument ([if_empty]). Dans le cas contraire, une erreur #CALC ! en résultera, car Excel ne prend pas en charge les tableaux vides pour le moment.
- Si une valeur de l’argument include est une erreur (#N/A, #VALUE, etc.) ou ne peut pas être convertie en valeur booléenne, la fonction FILTRE renvoie une erreur.
- La prise en charge par Excel des tableaux dynamiques entre des classeurs est limitée. Si vous fermez le classeur source, toutes les formules de tableau dynamique liées renvoient une erreur #REF ! lorsqu’elles sont actualisées.
Exemples
FILTRE pour renvoyer plusieurs critères
Dans ce cas, nous utilisons l’opérateur de multiplication (*) pour renvoyer toutes les valeurs dans notre plage matrice (A5 :D20) qui ont « pommes » ET qui sont dans la région Est : =FILTRE(A5 :D20 ;(C5 :C20=H1)*(A5 :A20=H2) ;" »).
FILTRE pour renvoyer plusieurs critères et trier
Dans ce cas, nous utilisons la fonction FILTRE précédente avec la fonction tri pour renvoyer toutes les valeurs dans notre plage matrice (A5 :D20) qui possèdent « pommes » et qui sont dans la région Est et puis effectuer un tri des unités dans l’ordre décroissant : =TRIER(FILTRE(A5 :D20 ;(C5 :C20=H1)*(A5 :A20=H2) ;" ») ;4 ;-1)
Dans ce cas, nous utilisons la fonction FILTRE avec l’opérateur d’addition (+) pour renvoyer toutes les valeurs dans notre plage matrice (A5 :D20) qui ont « pommes » OU qui sont dans la région Est et puis effectuer un tri des unités dans l’ordre décroissant : =TRIER(FILTRE(A5 :D20 ;(C5 :C20=H1)+(A5 :A20=H2) ;" ») ;4 ;-1).
Vous pouvez remarquer qu’aucune de ces fonctions n’a besoin de références absolues, car elles n’existent que dans une cellule, et étendent leurs résultats aux cellules adjacentes.
Vous avez besoin d’une aide supplémentaire ?
Vous pouvez toujours poser des questions à un expert de la Communauté technique Excel ou obtenir de l’aide dans les Communautés.