Often, you need to calculate a conditional sum. With a conditional sum, values in a range that meet one or more conditions are included in the sum. This section presents examples of conditional summing by using a single criterion.
The SUMIF function is very useful for single-criterion sum formulas. The SUMIF function takes three arguments:
range: The range containing the values that determine whether to include a particular cell in the sum.
criteria: An expression that determines whether to include a particular cell in the sum.
sum_range: Optional. The range that contains the cells you want to sum. If you omit this argument, the function uses the range specified in the first argument.
The examples that follow demonstrate the use of the SUMIF function. These formulas are based on the worksheet shown in Figure 17-13, set up to track invoices. Column F contains a formula that subtracts the date in column E from the date in column D. A negative number in column F indicates a past-due payment. The worksheet uses named ranges that correspond to the labels in row 1.
The following formula returns the sum of the negative values in column F. In other words, it returns the total number of past-due days for all invoices. For this worksheet, the formula returns –63.
=SUMIF(Difference,"<0")
Because you omit the third argument, the second argument (“<0”) applies to the values in the Difference range.
You don’t need to hard-code the arguments for the SUMIF function into your formula. For example, you can create a formula, such as the following, which gets the criteria argument from the contents of cell G2:
=SUMIF(Difference,G2)
This formula returns a new result if you change the criteria in cell G2.
The following formula returns the sum of the past-due invoice amounts (in column C):
=SUMIF(Difference,"<0",Amount)
This formula uses the values in the Difference range to determine if the corresponding values in the Amount range contribute to the sum.
The following formula returns the total invoice amounts for the Oregon office:
=SUMIF(Office,"=Oregon",Amount)
Using the equal sign is optional. The following formula has the same result:
=SUMIF(Office,"Oregon",Amount)
To sum the invoice amounts for all offices except Oregon, use this formula:
=SUMIF(Office,"<>Oregon",Amount)
The following formula returns the total invoice amounts that have a due date after May 1, 2007:
=SUMIF(DateDue,">="&DATE(2007,5,1),Amount)
Notice that the second argument for the SUMIF function is an expression. The expression uses the DATE function, which returns a date. Also, the comparison operator, enclosed in quotes, is concatenated (using the & operator) with the result of the DATE function.
The formula that follows returns the total invoice amounts that have a future due date (including today):
=SUMIF(DateDue,">="&TODAY(),Amount)