
=SUMPRODUCT(ISNUMBER(MATCH(rng1,{"A","B"},0))*ISNUMBER(MATCH(rng2,{"X","Y","Z"},0)))Related formulas
Count rows with multiple OR criteria
COUNTIFS with multiple criteria and OR logic
To count matching rows with multiple OR criteria, you can use a formula based on the SUMPRODUCT function. In the example shown, the formula in F10 is:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,{"A","B"},0))*ISNUMBER(MATCH(C5:C11,{"X","Y","Z"},0)))
This formula returns a count of rows where column one is A or B and column two is X, Y, or Z.
Working from the inside out, each criteria is applied with a separate ISNUMBER + MATCH construction. To generate a count of rows in column one where the value is A or B we use:
ISNUMBER(MATCH(B5:B11,{"A","B"},0)
MATCH generates a result array that looks like this:
{1;2;#N/A;1;2;1;2}and ISNUMBER converts this array to this array:
{TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE}To generate a count of rows in column two where the value is X, Y, or Z we use:
ISNUMBER(MATCH(C5:C11,{"X","Y","Z"},0))
Then MATCH returns:
{1;2;3;3;#N/A;1;2}and ISNUMBER converts to:
{TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE}These two arrays are multiplied together inside SUMPRODUCT, which automatically converts TRUE FALSE values to 1 and 0 as part of the math operation.
So, to visualize, the final result is derived like this:
=SUMPRODUCT({1;1;0;1;1;1;1}*{1;1;1;1;0;1;1})=SUMPRODUCT({1;1;0;1;0;1;1})=5
The example above uses hardcoded array constants, but you can also use cell references:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))

=SUMPRODUCT(ISNUMBER(MATCH(rng1,{"A","B"},0))*ISNUMBER(MATCH(rng2,{"X","Y","Z"},0)))Related formulas
Count rows with multiple OR criteria
COUNTIFS with multiple criteria and OR logic
To count matching rows with multiple OR criteria, you can use a formula based on the SUMPRODUCT function. In the example shown, the formula in F10 is:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,{"A","B"},0))*ISNUMBER(MATCH(C5:C11,{"X","Y","Z"},0)))
This formula returns a count of rows where column one is A or B and column two is X, Y, or Z.
Working from the inside out, each criteria is applied with a separate ISNUMBER + MATCH construction. To generate a count of rows in column one where the value is A or B we use:
ISNUMBER(MATCH(B5:B11,{"A","B"},0)
MATCH generates a result array that looks like this:
{1;2;#N/A;1;2;1;2}and ISNUMBER converts this array to this array:
{TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE}To generate a count of rows in column two where the value is X, Y, or Z we use:
ISNUMBER(MATCH(C5:C11,{"X","Y","Z"},0))
Then MATCH returns:
{1;2;3;3;#N/A;1;2}and ISNUMBER converts to:
{TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE}These two arrays are multiplied together inside SUMPRODUCT, which automatically converts TRUE FALSE values to 1 and 0 as part of the math operation.
So, to visualize, the final result is derived like this:
=SUMPRODUCT({1;1;0;1;1;1;1}*{1;1;1;1;0;1;1})=SUMPRODUCT({1;1;0;1;0;1;1})=5
The example above uses hardcoded array constants, but you can also use cell references:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))