Sum if equal to either x or y in Excel
This tutorial shows how to Sum if equal to either x or y in Excel using the example below;
In the example, we are summing all sales from either the West OR North region.
Explanation
If you need to sum numbers based on other cells being equal to either one value or another (either x or y), you can use the SUMIF function.
The formula in cell H6 is:
=SUMIF(region,"West",amount)+SUMIF(region,"North",amount)
Where region is a named range for C5:C30 and amount is a named range for E5:E30.
Each instance of SUMIF provides a subtotal, one for sales in the West, one for sales in the North. The formula simply adds these two results together.
SUMIF with an array constant
A more elegant solution is to give the SUMIF function more than one value for the criteria, using an array constant. To do this, construct a normal SUMIF, but package the criteria in array syntax — curly braces, with individual items separated by commas. Finally, wrap the entire SUMIF function in the SUM function. This is necessary because SUMIF will return one result for each item in the criteria array and these results need to be added together:
The formula in cell H7 is:
=SUM(SUMIF(region,{"West","North"},amount))
Criteria as reference
If you want to supply criteria as a range (a reference), you’ll need to enter as an array formula with control + shift + enter:
{=SUM(SUMIF(region,criteria,amount))}
where criteria is a range like A1:A2.
SUMPRODUCT alternative
You can also use SUMPRODUCT to sum cells with OR logic. The formula in cell H8 is:
=SUMPRODUCT(amount *((region="West") + (region="North")))
This could also be written as:
=SUMPRODUCT(amount*(region={"West","North"}))
SUMPRODUCT is not as fast as SUMIF, but the speed difference is not noticeable with smaller data sets.