Formule Excel: filtre exclure les valeurs vides -

Table des matières

Formule générique

=FILTER(data,(rng1"")*(rng2"")*(rng3""))

Sommaire

Pour filtrer les lignes avec des cellules vides ou vides, vous pouvez utiliser la fonction FILTER avec une logique booléenne. Dans l'exemple illustré, la formule en F5 est:

=FILTER(B5:D15,(B5:B15"")*(C5:C15"")*(D5:D15""))

La sortie contient uniquement des lignes des données source où les trois colonnes ont une valeur.

Explication

La fonction FILTER est conçue pour extraire les données qui correspondent à un ou plusieurs critères. Dans ce cas, nous voulons appliquer des critères qui exigent que les trois colonnes des données source (nom, groupe et salle) contiennent des données. En d'autres termes, si une ligne ne contient aucune de ces valeurs, nous voulons exclure cette ligne de la sortie.

Pour ce faire, nous utilisons trois expressions booléennes opérant sur des tableaux. La première expression teste les noms vides:

B5:B15"" // check names

L'opérateur not () avec une chaîne vide ("") se traduit par "non vide". Pour chaque cellule de la plage B5: B15, le résultat sera VRAI ou FAUX, où VRAI signifie «non vide» et FALSE signifie «vide». Comme il y a 11 cellules dans la plage, nous obtenons 11 résultats dans un tableau comme celui-ci:

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

La deuxième expression teste les groupes vides:

C5:C15"" // check groups

Encore une fois, nous vérifions 11 cellules, nous obtenons donc 11 résultats:

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

Enfin, nous vérifions les numéros de chambre vides:

D5:D15"" // check groups

qui produit:

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

Lorsque les tableaux qui résultent des trois expressions ci-dessus sont multipliés ensemble, l'opération mathématique contraint les valeurs TRUE et FALSE à 1 et 0. Nous utilisons la multiplication dans ce cas, car nous voulons appliquer la logique "ET": expression1 ET expression2 ET expression3. En d'autres termes, les trois expressions doivent renvoyer TRUE dans une ligne donnée.

En suivant les règles de la logique booléenne, le résultat final est un tableau comme celui-ci:

(1;0;1;0;1;1;1;0;0;0;1)

Ce tableau est livré directement à la fonction FILTER en tant qu'argument d'inclusion. FILTER inclut uniquement les 6 lignes qui correspondent à 1 dans la sortie finale.

Articles intéressants...