Excel-formel: IF med boolsk logikk -

Innholdsfortegnelse

Generisk formel

= IF(criteria1*criteria2*criteria3,result)

Sammendrag

I eksemplet vist er formelen i F8:

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

Merk: dette er en matriseformel, og må angis med kontroll + skift + enter.

Forklaring

Merk: Dette eksemplet viser hvordan du erstatter en nestet IF-formel med en enkelt IF i en matriseformel ved hjelp av boolsk logikk. Denne teknikken kan brukes til å redusere kompleksiteten i komplekse formler. Imidlertid er eksemplet kun for illustrasjon. Dette spesielle problemet kan lett løses med SUMIFS eller SUMPRODUCT.

Formlene i F7 og F8 gir samme resultat, men har forskjellige tilnærminger. I celle F7 har vi følgende formel, ved hjelp av en nestet IF-tilnærming:

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

Slik evaluerer Excel IFs i 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)))

I hovedsak "filtrerer" hver IF verdier til neste IF, og bare mengder der alle tre logiske testene returnerer SANN "overlever" operasjonen. Andre mengder blir FALSE og blir vurdert av SUM som null. Det endelige resultatet i SUM er en rekke verdier som dette:

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

FALSE verdier blir evaluert til null, og SUM-funksjonen returnerer et endelig resultat på 18.

I F8 har vi denne formelen, som bruker en enkelt IF og boolsk logikk:

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

Hvert logiske uttrykk returnerer en matrise med SANNE og FALSE verdier. Når disse matriser multipliseres sammen, tvinger matematikkoperasjonen verdier til en og null i en enkelt matrise som dette:

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

Matrisen med 1s og 0s filtrerer ut irrelevante data, og samme resultat levert til SUM:

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

Som før returnerer SUM et endelig resultat på 18.

Interessante artikler...