Exceli valem: kui loogika loogikaga -

Lang L: none (table-of-contents)

Üldine valem

= IF(criteria1*criteria2*criteria3,result)

Kokkuvõte

Näidatud näites on valemis F8 järgmine:

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

Märkus: see on massiivi valem ja see tuleb sisestada juhtklahviga + shift + enter.

Selgitus

Märkus. See näide näitab, kuidas pesastatud IF-valem massiivivalemis asendada ühe IF-ga, kasutades tõeväärtuse loogikat. Seda tehnikat saab kasutada keerukate valemite keerukuse vähendamiseks. Näide on siiski ainult illustreeriv. Selle konkreetse probleemi saab hõlpsasti lahendada rakenduste SUMIFS või SUMPRODUCT abil.

Valemites F7 ja F8 tagastatakse sama tulemus, kuid nende lähenemisviisid on erinevad. Lahtris F7 on sisestatud IF-i meetodi abil järgmine valem:

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

Nii hindab Excel SUM-is olevaid IF-sid:

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

Sisuliselt "IF" filtreerib väärtused järgmisse IF-sse ja operatsioonis jäävad ellu ainult kogused, kus kõik kolm loogilist testi tagastavad TÕENE. Muud kogused muutuvad VÄÄRAKS ja SUM hindab neid nulliks. Lõpptulemus SUM-is on selline väärtus:

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

FALSE väärtused saavad nulli ja funktsioon SUM tagastab lõpptulemuse 18.

F8-s on meil see valem, mis kasutab ühte IF ja loogika loogikat:

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

Iga loogiline avaldis tagastab massiivi TRUE ja FALSE. Kui need massiivid korrutatakse kokku, sunnib matemaatikaoperatsioon väärtusi ühele ja nullile ühe massiivi korral nii:

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

Massiiv 1s ja 0s filtreerib ebaolulised andmed ja sama tulemus edastatakse summale SUM:

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

Nagu varemgi, tagastab SUM lõpptulemuse 18.

Huvitavad Artiklid...