Excel formula: SUMPRODUCT saskaita vairākus VAI kritērijus

Satura rādītājs

Vispārēja formula

=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))

Kopsavilkums

Lai saskaitītu atbilstošās rindas ar vairākiem VAI kritērijiem, varat izmantot formulu, kuras pamatā ir funkcija SUMPRODUCT. Parādītajā piemērā formula F10 ir:

=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))

Šī formula atgriež rindu skaitu, kur pirmā kolonna ir A vai B, bet otrā kolonna ir X, Y vai Z.

Paskaidrojums

Strādājot no iekšpuses uz āru, katrs kritērijs tiek piemērots ar atsevišķu ISNUMBER + MATCH konstrukciju. Lai izveidotu rindu skaitu pirmajā kolonnā, kuras vērtība ir A vai B, mēs izmantojam:

ISNUMBER(MATCH(B5:B11,("A","B"),0)

MATCH ģenerē rezultātu masīvu, kas izskatās šādi:

(1;2;#N/A;1;2;1;2)

un ISNUMBER pārveido šo masīvu par šo masīvu:

(TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE)

Lai izveidotu rindu skaitu otrajā kolonnā, kur vērtība ir X, Y vai Z, mēs izmantojam:

ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))

Tad atgriežas MATCH:

(1;2;3;3;#N/A;1;2)

un ISNUMBER pārveido par:

(TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)

Šie divi masīvi tiek reizināti kopā SUMPRODUCT iekšpusē, kas matemātikas darbības ietvaros automātiski pārvērš TRUE FALSE vērtības uz 1 un 0.

Tātad, lai vizualizētu, gala rezultāts tiek iegūts šādi:

=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5

Ar šūnu atsaucēm

Iepriekš minētajā piemērā tiek izmantotas stingri kodētas masīvu konstantes, taču varat izmantot arī šūnu atsauces:

=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))

Vairāk kritēriju

Šo pieeju var "palielināt", lai apstrādātu vairāk kritēriju. Šajā formulas izaicinājumā varat redzēt piemēru.

Interesanti raksti...