Excel-formel: SUMPRODUCT räknar flera ELLER kriterier -

Innehållsförteckning

Generisk formel

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

Sammanfattning

För att räkna matchande rader med flera ELLER-kriterier kan du använda en formel baserad på SUMPRODUCT-funktionen. I exemplet som visas är formeln i F10:

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

Denna formel returnerar ett antal rader där kolumn ett är A eller B och kolumn två är X, Y eller Z.

Förklaring

Arbetar inifrån och ut, varje kriterium tillämpas med en separat ISNUMBER + MATCH-konstruktion. För att generera ett antal rader i kolumn ett där värdet är A eller B använder vi:

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

MATCH genererar en resultatmatris som ser ut så här:

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

och ISNUMBER konverterar denna array till denna array:

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

För att generera ett antal rader i kolumn två där värdet är X, Y eller Z använder vi:

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

Sedan returnerar MATCH:

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

och ISNUMBER konverterar till:

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

Dessa två matriser multipliceras tillsammans i SUMPRODUCT, som automatiskt omvandlar SANT FALSKA värden till 1 och 0 som en del av matteoperationen.

Så, för att visualisera, slutresultatet härleds så här:

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

Med cellreferenser

I exemplet ovan används hårdkodade arraykonstanter, men du kan också använda cellreferenser:

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

Fler kriterier

Detta tillvägagångssätt kan "skalas upp" för att hantera fler kriterier. Du kan se ett exempel i denna formelutmaning.

Intressanta artiklar...