Excel képlet: IF logikai logikával -

Tartalomjegyzék

Általános képlet

= IF(criteria1*criteria2*criteria3,result)

Összegzés

A bemutatott példában az F8 képlete a következő:

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

Megjegyzés: ez egy tömbképlet, amelyet a control + shift + enter billentyűkombinációval kell megadni.

Magyarázat

Megjegyzés: Ez a példa bemutatja, hogyan lehet egy beágyazott IF-képletet egy tömb-képletben egyetlen IF-re cserélni logikai logika segítségével. Ez a technika alkalmazható a komplex képletek összetettségének csökkentésére. A példa azonban csak illusztráció. Ez a probléma könnyen megoldható a SUMIFS vagy a SUMPRODUCT segítségével.

Az F7 és F8 képletei ugyanazt az eredményt adják, de eltérő megközelítéssel rendelkeznek. Az F7 cellában a következő képletet használjuk beágyazott IF megközelítéssel:

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

Az Excel így értékeli a SUM-on belüli IF-ket:

=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)))

Lényegében minden IF "kiszűri" az értékeket a következő IF-be, és csak azok a mennyiségek "élik túl" a műveletet, amelyeknél mindhárom logikai teszt IGAZ értéket ad vissza. Más mennyiségek HAMISokká válnak, és a SUM értéke nulla. A SUM belsejében a végeredmény egy ilyen értéktömb:

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

A FALSE értékek nullára értékelik, és a SUM függvény 18-as végeredményt ad vissza.

Az F8-ban ez a képlet van, amely egyetlen IF és logikai logikát használ:

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

Minden logikai kifejezés egy TRUE és FALSE érték tömböt ad vissza. Ha ezeket a tömböket összeszorozzuk, a matematikai művelet egy és egy nullára kényszeríti az értékeket egyetlen tömbben:

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

Az 1s és 0s tömb kiszűri a lényegtelen adatokat, és ugyanaz az eredmény érkezik a SUM-hoz:

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

Mint korábban, a SUM is 18-as végeredményt ad.

érdekes cikkek...