Excel-formel: Filter ekskluderer tomme værdier -

Indholdsfortegnelse

Generisk formel

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

Resumé

For at filtrere rækker ud med tomme eller tomme celler kan du bruge FILTER-funktionen med boolsk logik. I det viste eksempel er formlen i F5:

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

Outputtet indeholder kun rækker fra kildedataene, hvor alle tre kolonner har en værdi.

Forklaring

FILTER-funktionen er designet til at udtrække data, der matcher et eller flere kriterier. I dette tilfælde vil vi anvende kriterier, der kræver, at alle tre kolonner i kildedataene (Navn, Gruppe og Rum) har data. Med andre ord, hvis en række mangler nogen af ​​disse værdier, vil vi udelukke den række fra output.

For at gøre dette bruger vi tre boolske udtryk, der fungerer på arrays. Det første udtryk tester for blanke navne:

B5:B15"" // check names

Ikke-operatoren () med en tom streng ("") oversættes til "ikke tom". For hver celle i området B5: B15 bliver resultatet enten SAND eller FALSK, hvor SAND betyder "ikke tom" og FALSK betyder "tom". Da der er 11 celler i området, får vi 11 resultater i en matrix som denne:

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

Det andet udtryk tester for blanke grupper:

C5:C15"" // check groups

Igen kontrollerer vi 11 celler, så vi får 11 resultater:

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

Endelig kontrollerer vi for tomme rumnumre:

D5:D15"" // check groups

der producerer:

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

Når matrixerne, der er resultatet af de tre ovenstående udtryk, multipliceres sammen, tvinger matematikoperationen de SANDE og FALSKE værdier til 1 og 0. Vi bruger multiplikation i dette tilfælde, fordi vi ønsker at håndhæve "AND" -logik: expression1 AND expression2 AND expression3. Med andre ord skal alle tre udtryk returnere SAND i en given række.

Efter reglerne for boolsk logik er det endelige resultat en matrix som denne:

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

Denne matrix leveres direkte til FILTER-funktionen som inkluderingsargument. FILTER inkluderer kun de 6 rækker, der svarer til 1'ere i den endelige output.

Interessante artikler...