Excel vzorec: IF s logickou logikou -

Obsah

Obecný vzorec

= IF(criteria1*criteria2*criteria3,result)

souhrn

V zobrazeném příkladu je vzorec v F8:

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

Poznámka: toto je maticový vzorec a musí být zadán pomocí kláves Control + Shift + Enter.

Vysvětlení

Poznámka: Tento příklad ukazuje, jak nahradit vnořený vzorec IF jediným IF ve vzorci pole pomocí logické logiky. Tuto techniku ​​lze použít ke snížení složitosti složitých vzorců. Příklad je však pouze pro ilustraci. Tento konkrétní problém lze snadno vyřešit pomocí SUMIFS nebo SUMPRODUCT.

Vzorce v F7 a F8 vrátí stejný výsledek, ale mají různé přístupy. V buňce F7 máme následující vzorec používající vnořený přístup IF:

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

Takto Excel vyhodnotí investiční fondy uvnitř 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 podstatě každý IF "filtruje" hodnoty do dalšího IF a pouze veličiny, kde všechny tři logické testy vracejí PRAVDU "přežijí" operaci. Ostatní veličiny se stanou NEPRAVDA a jsou součtem vyhodnoceny jako nula. Konečným výsledkem uvnitř SUM je řada hodnot, jako je tato:

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

FALSE hodnoty se vyhodnotí na nulu a funkce SUM vrátí konečný výsledek 18.

V F8 máme tento vzorec, který používá jeden IF a logickou logiku:

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

Každý logický výraz vrací pole TRUE a FALSE hodnot. Když se tato pole násobí dohromady, matematická operace vynutí hodnoty na jedničky a nuly v jednom poli takto:

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

Pole hodnot 1s a 0s odfiltruje irelevantní data a stejný výsledek je doručen do SUM:

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

Stejně jako dříve vrátí SUM konečný výsledek 18.

Zajímavé články...