
Vispārēja formula
=FILTER(data,ISNUMBER(MATCH(rng1,rng2,0)),"No data")
Kopsavilkums
Lai filtrētu datus, iekļaujot tikai tos ierakstus, kuru kolonna ir vienāda ar vienu no daudzajām vērtībām, varat izmantot funkciju FILTER kopā ar funkciju ISNUMBER un MATCH. Parādītajā piemērā formula F5 ir:
=FILTER(data,ISNUMBER(MATCH(color,list,0)),"No data")
kur "dati" (B5: D15), "krāsa" (C5: C15) un "saraksts" (J5: J7) ir nosaukti diapazoni.
Paskaidrojums
Funkcija FILTER var filtrēt datus, izmantojot loģisku izteiksmi, kas sniegta kā arguments "iekļaut". Šajā piemērā šis arguments ir izveidots ar izteiksmi, kas izmanto funkcijas ISNUMBER un MATCH šādi:
=ISNUMBER(MATCH(color,list,0))
MATCH ir konfigurēts katrai krāsai C5: C15 meklēt mazākā diapazonā J5: J7. Funkcija MATCH atgriež šādu masīvu:
(1;#N/A;#N/A;#N/A;2;3;2;#N/A;#N/A;#N/A;3)
Paziņojumu numuri atbilst "atrasto" krāsu (vai nu "sarkanā", "zilā" vai "melnā") pozīcijai, un kļūdas atbilst rindām, kurās mērķa krāsa netika atrasta. Lai piespiestu TRUE vai FALSE rezultātu, šis masīvs nonāk funkcijā ISNUMBER, kas atgriež:
(TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;TRUE)
Iepriekš minētais masīvs tiek piegādāts funkcijai FLITER kā arguments arguments, un FILTER atgriež tikai rindas, kas atbilst TRUE vērtībai.
Ar grūti kodētām vērtībām
Iepriekš minētais piemērs ir izveidots ar šūnu atsaucēm, kur mērķa krāsas ievadītas diapazonā J5: J7. Tomēr, izmantojot masīva konstanti, jūs varat kodēt vērtības šādā formulā ar tādu pašu rezultātu:
=FILTER(data,ISNUMBER(MATCH(color,("red","blue","black"),0)),"No data")