Formule Excel: le filtre contient l'un des nombreux -

Table des matières

Formule générique

=FILTER(data,ISNUMBER(MATCH(rng1,rng2,0)),"No data")

Sommaire

Pour filtrer les données afin d'inclure uniquement les enregistrements dans lesquels une colonne est égale à l'une des nombreuses valeurs, vous pouvez utiliser la fonction FILTER avec la fonction ISNUMBER et la fonction MATCH. Dans l'exemple illustré, la formule en F5 est:

=FILTER(data,ISNUMBER(MATCH(color,list,0)),"No data")

où «données» (B5: D15), «couleur» (C5: C15) et «liste» (J5: J7) sont des plages nommées.

Explication

La fonction FILTER peut filtrer les données à l'aide d'une expression logique fournie comme argument "inclure". Dans cet exemple, cet argument est créé avec une expression qui utilise les fonctions ISNUMBER et MATCH comme ceci:

=ISNUMBER(MATCH(color,list,0))

MATCH est configuré pour rechercher chaque couleur dans C5: C15 dans la plage la plus petite J5: J7. La fonction MATCH renvoie un tableau comme celui-ci:

(1;#N/A;#N/A;#N/A;2;3;2;#N/A;#N/A;#N/A;3)

Les numéros d'avis correspondent à la position des couleurs "trouvées" ("rouge", "bleu" ou "noir") et les erreurs correspondent aux lignes où une couleur cible n'a pas été trouvée. Pour forcer un résultat de TRUE ou FALSE, ce tableau entre dans la fonction ISNUMBER, qui renvoie:

(TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;TRUE)

Le tableau ci-dessus est fourni à la fonction FLITER en tant qu'argument d'inclusion et FILTER ne renvoie que les lignes qui correspondent à une valeur TRUE.

Avec des valeurs codées en dur

L'exemple ci-dessus est créé avec des références de cellule, où les couleurs cibles sont entrées dans la plage J5: J7. Cependant, mais en utilisant une constante de tableau, vous pouvez coder en dur les valeurs dans la formule comme ceci avec le même résultat:

=FILTER(data,ISNUMBER(MATCH(color,("red","blue","black"),0)),"No data")

Articles intéressants...