Formule Excel: filtrer les données horizontales -

Table des matières

Formule générique

=FILTER(data,logic)

Sommaire

Pour filtrer les données disposées horizontalement en colonnes, vous pouvez utiliser la fonction FILTRE. Dans l'exemple illustré, la formule en C9 est:

=TRANSPOSE(FILTER(data,group="fox"))

où les données (C4: L6) et le groupe (C5: L5) sont des plages nommées.

Explication

Remarque: FILTER est une nouvelle fonction de tableau dynamique dans Excel 365. Dans d'autres versions d'Excel, il existe des alternatives, mais elles sont plus complexes.

Il y a dix colonnes de données dans la plage C4: L6. Le but est de filtrer ces données horizontales et d'extraire uniquement les colonnes (enregistrements) où le groupe est "renard". Pour plus de commodité et de lisibilité, la feuille de calcul contient trois plages nommées: données (C4: L6) et groupe (C5: L5), et âge (C6: L6).

La fonction FILTER peut être utilisée pour extraire des données disposées verticalement (en lignes) ou horizontalement (en colonnes). FILTER renverra les données correspondantes dans la même orientation. Aucune configuration spéciale n'est requise. Dans l'exemple illustré, la formule en C9 est:

=FILTER(data,group="fox")

Travaillant de l'intérieur vers l'extérieur, l'argument include pour FILTER est une expression logique:

group="fox" // test for "fox"

Lorsque l'expression logique est évaluée, elle renvoie un tableau de 10 valeurs TRUE et FALSE:

(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE)

Remarque: les virgules (,) dans ce tableau indiquent des colonnes. Les points-virgules (;) indiqueraient des lignes.

Le tableau contient une valeur par colonne dans les données, et chaque TRUE correspond à une colonne où le groupe est «renard». Ce tableau est renvoyé directement à FILTER en tant qu'argument d'inclusion, et il effectue le filtrage réel:

FILTER(data,(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE))

Seules les données qui correspondent aux valeurs TRUE passent le filtre, donc FILTER renvoie les 6 colonnes où le groupe est "renard". FILTER renvoie ces données dans la structure horizontale d'origine. Étant donné que FILTER est une fonction de tableau dynamique, les résultats se répartissent dans la plage C9: H11.

Il s'agit d'une solution dynamique - si des données source dans C4: L6 changent, les résultats de FILTER sont automatiquement mis à jour.

Transposer au format vertical

Pour transposer les résultats du filtre dans un format vertical (lignes), vous pouvez envelopper la fonction TRANSPOSE autour de la fonction FILTER comme ceci:

=TRANSPOSE(FILTER(data,group="fox"))

Le résultat ressemble à ceci:

Cette formule est expliquée plus en détail ici.

Filtrer par âge

La même formule de base peut être utilisée pour filtrer les données de différentes manières. Par exemple, pour filtrer les données afin d'afficher uniquement les colonnes dont l'âge est inférieur à 22 ans, vous pouvez utiliser une formule comme celle-ci:

=FILTER(data,age<22)

FILTER renvoie les quatre colonnes de données correspondantes:

Articles intéressants...