Excel

FILTER s viacerými kritériami ALEBO

Filter With Multiple

Vzorec programu Excel: FILTER s viacerými kritériami ALEBOZhrnutie

Na extrahovanie údajov s viacerými podmienkami ALEBO môžete použiť Funkcia FILTER spolu s Funkcia MATCH . V uvedenom príklade vzorec v F9 je:





 
= FILTER (B5:D16,  ISNUMBER ( MATCH (items,F5:F6,0))*  ISNUMBER ( MATCH (colors,G5:G6,0))*  ISNUMBER ( MATCH (cities,H5:H6,0)))

kde položky (B3: B16), farby (C3: C16) a Mestá (D3: D16) sú pomenované rozsahy .

Tento vzorec vráti údaje, kde položka je (tričká ALEBO mikina) A farba je (červená ALEBO modrá) A mesto je (denver ALEBO Seattle).





Vysvetlenie

V tomto prípade sú kritériá zadané v rozsahu F5: H6. Logika vzorca je:

položka je (tričko ALEBO mikina) A farba je (červená ALEBO modrá) A mesto je (Denver ALEBO Seattle)



Logika filtrovania tohto vzorca ( zahrnúť argument) sa aplikuje pomocou ISNUMBER a funkcie MATCH spolu s booleovská logika aplikované v operácii poľa.

MATCH je nakonfigurovaný „spätne“, pričom vyhľadávacie hodnoty pochádzajú z údajov a kritériá používané pre vyhľadávacie pole. Prvou podmienkou napríklad je, že položky musia byť buď tričká alebo mikina. Na uplatnenie tejto podmienky je MATCH nastavený takto:

 
 MATCH (items,F5:F6,0) // check for tshirt or hoodie

Pretože v dátach je 12 hodnôt, výsledkom je an pole s 12 hodnotami ako je tento:

 
{1#N/A#N/A2#N/A22#N/A1#N/A21}

Toto pole obsahuje buď #N/A chýb (žiadna zhoda), alebo čísla (zhoda). Čísla oznámení zodpovedajú položkám, ktoré sú buď tričkom alebo mikinou. Na konverziu tohto poľa na TRUE a FALSE hodnoty je funkcia MATCH zabalená do funkcie ISNUMBER:

 
 ISNUMBER ( MATCH (items,F5:F6,0))

čo poskytne pole takto:

ako vytvoríte stĺpcový graf v programe Excel
 
{TRUEFALSEFALSETRUEFALSETRUETRUEFALSETRUEFALSETRUETRUE}

V tomto poli hodnoty TRUE zodpovedajú tričku alebo mikine.

Úplný vzorec obsahuje tri výrazy, ako sú tie, ktoré boli použité pre argument include funkcie FILTER:

 
 ISNUMBER ( MATCH (items,F5:F6,0))* // tshirt or hoodie  ISNUMBER ( MATCH (colors,G5:G6,0))* // red or blue  ISNUMBER ( MATCH (cities,H5:H6,0))) // denver or seattle

Po vyhodnotení MATCH a ISNUMBER máme tri polia obsahujúce hodnoty TRUE a FALSE. Matematická operácia vynásobenia týchto polí spolu vygeneruje hodnoty PRAVDA a NEPRAVDA na 1 s a 0 s, takže polia v tomto mieste môžeme vizualizovať takto:

 
{100101101011}* {101101000001}* {101001011001}

Výsledkom je, že podľa pravidiel booleovskej aritmetiky je jedno pole:

 
{100001000001}

ktorý sa stane argumentom include vo funkcii FILTER:

 
= FILTER (B5:D16,{100001000001})

Konečným výsledkom sú tri riadky údajov uvedené v F9: H11

S pevne zakódovanými hodnotami

Aj keď vzorec v príklade používa kritériá zadané priamo v pracovnom hárku, kritériá môžu byť naprogramované ako maticové konštanty namiesto toho takto:

 
= FILTER (B5:D16,  ISNUMBER ( MATCH (items,{'Tshirt''Hoodie'},0))*  ISNUMBER ( MATCH (colors,{'Red''Blue'},0))*  ISNUMBER ( MATCH (cities,{'Denver''Seattle'},0)))
Autor Dave Bruns


^