„Excel“ formulė: suskaičiuokite, ar eilutė atitinka kelis vidinius kriterijus

Turinys

Bendroji formulė

=SUMPRODUCT((logical1)*(logical2))

Santrauka

Norėdami suskaičiuoti eilutes lentelėje, kurios atitinka kelis kriterijus, kai kurie iš jų priklauso nuo loginių testų, kurie veikia eilutės lygiu, galite naudoti funkciją SUMPRODUCT.

Kontekstas

Turite lentelę, kurioje pateikiami sporto varžybų rezultatai. Turite keturis stulpelius: namų komanda, svečių komanda, namų komandos rezultatas, svečių komandos rezultatas. Tam tikrai komandai norite skaičiuoti tik tas rungtynes ​​(eiles), kuriose komanda laimėjo namuose. Lengva suskaičiuoti rungtynes ​​(eilutes), kur komanda buvo namų komanda, bet kaip suskaičiuoti tik pergales?

Tai yra geras SUMPRODUCT funkcijos naudojimas, kuris gali natūraliai valdyti masyvo operacijas (galvoti operacijas, kurios tvarko diapazonus).

Parodytame pavyzdyje formulė langelyje H5 yra:

=SUMPRODUCT((B5:B10=G5)*(D5:D10>E5:E10))

Paaiškinimas

Funkcija SUMPRODUCT užprogramuota taip, kad masyvai būtų tvarkomi natūraliai, nereikalaujant „Control Shift Enter“. Numatyta elgsena yra dauginti atitinkamus elementus vienoje ar daugiau masyvų kartu, tada susumuoti produktus. Pateikus vieną masyvą, jis grąžina masyvo elementų sumą.

Šiame pavyzdyje vieno masyvo argumente naudojame dvi logines išraiškas. Kiekvieną išraišką galėtume įdėti į atskirą argumentą, bet tada turėtume priversti logines TRUE FALSE reikšmes vienoms ir nulio reikšmėms kitam operatoriui.

Naudodama daugybos operatorių, kad kartu padaugintumėte du masyvus, „Excel“ automatiškai privers logines vertes į vienetus ir nulius.

Įvertinus dvi logines išraiškas, formulė atrodo taip:

=SUMPRODUCT(((FALSE;TRUE;FALSE;TRUE;FALSE;TRUE))*((TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)))

Padauginus du masyvus, formulė atrodo taip:

=SUMPRODUCT((0;1;0;0;0;1))

Likus tik vienam masyvui, SUMPRODUCT paprasčiausiai susumuoja masyvo elementus ir grąžina sumą.

Įdomios straipsniai...