Formula Excel: Filtrul exclude valorile goale -

Cuprins

Formula generică

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

rezumat

Pentru a filtra rândurile cu celule goale sau goale, puteți utiliza funcția FILTER cu logică booleană. În exemplul prezentat, formula din F5 este:

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

Ieșirea conține doar rânduri din datele sursă în care toate cele trei coloane au o valoare.

Explicaţie

Funcția FILTER este concepută pentru a extrage date care se potrivesc cu unul sau mai multe criterii. În acest caz, dorim să aplicăm criterii care necesită toate cele trei coloane din datele sursă (Nume, Grup și Cameră) pentru a avea date. Cu alte cuvinte, dacă unui rând îi lipsește oricare dintre aceste valori, dorim să excludem acel rând din ieșire.

Pentru a face acest lucru, folosim trei expresii booleene care operează pe tablouri. Primele teste de expresie pentru nume necompletate:

B5:B15"" // check names

Operatorul not () cu un șir gol ("") se traduce prin "nu gol". Pentru fiecare celulă din intervalul B5: B15, rezultatul va fi ADEVĂRAT sau FALS, unde ADEVĂRAT înseamnă „nu gol” și FALS înseamnă „gol”. Deoarece există 11 celule în interval, obținem 11 rezultate într-o matrice ca aceasta:

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

Al doilea test de expresie pentru grupurile goale:

C5:C15"" // check groups

Din nou, verificăm 11 celule, deci obținem 11 rezultate:

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

În cele din urmă, verificăm numerele camerei goale:

D5:D15"" // check groups

care produce:

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

Când matricile care rezultă din cele trei expresii de mai sus sunt multiplicate împreună, operația matematică constrânge valorile TRUE și FALSE la 1s și 0s. Folosim multiplicarea în acest caz, pentru că dorim să impunem logica „ȘI”: expresie1 ȘI expresie2 ȘI expresie3. Cu alte cuvinte, toate cele trei expresii trebuie să returneze TRUE într-un rând dat.

Urmând regulile logicii booleene, rezultatul final este o matrice ca aceasta:

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

Această matrice este livrată direct la funcția FILTER ca argument include. FILTER include doar cele 6 rânduri care corespund la 1s în ieșirea finală.

Articole interesante...