Excel vzorec: AK s logickou logikou -

Obsah

Všeobecný vzorec

= IF(criteria1*criteria2*criteria3,result)

Zhrnutie

V zobrazenom príklade je vzorec v F8:

(=SUM(IF((color="red")*(region="East")*(quantity>7),quantity)))

Poznámka: toto je vzorec poľa a musí sa zadávať pomocou klávesov Control + Shift + Enter.

Vysvetlenie

Poznámka: Tento príklad ukazuje, ako nahradiť vnorený vzorec IF jedným IF vo vzorci poľa pomocou logickej logiky. Túto techniku ​​je možné použiť na zníženie zložitosti zložitých vzorcov. Príklad je však len ilustračný. Tento konkrétny problém by sa dal ľahko vyriešiť pomocou SUMIFS alebo SUMPRODUCT.

Vzorce v F7 a F8 vrátia rovnaký výsledok, ale majú odlišný prístup. V bunke F7 máme nasledujúci vzorec, ktorý používa vnorený prístup IF:

(=SUM(IF(color="red",IF(region="east",IF(quantity>7,quantity)))))

Takto program Excel vyhodnotí IF vo vnútri SUM:

=IF((TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE), IF((TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE), IF((FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE),quantity)))

V podstate každý IF „filtruje“ hodnoty do nasledujúceho IF a operáciu prežijú iba veličiny, pri ktorých všetky tri logické testy vrátia hodnotu TRUE. Ostatné veličiny sa stávajú NEPRAVDA a sú hodnotené SUM ako nula. Konečným výsledkom vo vnútri SUM je pole týchto hodnôt:

=SUM((FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;8;FALSE;10))

FALSE hodnoty sa vyhodnotia na nulu a funkcia SUM vráti konečný výsledok 18.

Vo F8 máme tento vzorec, ktorý používa jeden IF a logickú logiku:

=SUM(IF((color="red")*(region="East")*(quantity>7),quantity))

Každý logický výraz vracia pole s hodnotami TRUE a FALSE. Keď sa tieto polia vynásobia, matematická operácia vynúti hodnoty na jednotky a nuly v jednom poli takto:

IF((0;0;0;0;0;0;1;0;1),quantity)

Pole 1 s a 0 s filtruje irelevantné údaje a rovnaký výsledok sa zobrazuje aj v SUM:

=SUM((FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;8;FALSE;10))

Rovnako ako predtým, SUM vráti konečný výsledok 18.

Zaujímavé články...