Skip to content
Free Excel Tutorials
  • Home
  • Excel For Beginners
  • Excel Intermediate
  • Advanced Excel For Experts

Data Analysis

  • How to create a Histogram in Excel
  • How to create Gauge Chart in Excel
  • How To Insert and Customize Sparklines in Excel
  • How to combine 2 or more chart types in a single chart in Excel
  • How to calculate average last N values in a table in Excel

References

  • How to use Excel COLUMN Function
  • Vlookup Examples in Excel
  • How to get address of first cell in range in Excel
  • How to reference named range different sheet in Excel
  • How to get last row in mixed data with blanks in Excel

Data Validations

  • Excel Data validation exists in list
  • Excel Data validation date in next 30 days
  • Excel Data validation only dates between
  • Excel Data validation number multiple 100
  • Excel Data validation must contain specific text

SUMPRODUCT with IF in Excel

by

This tutorial shows how to SUMPRODUCT with IF in Excel using the example below;

Formula

=SUMPRODUCT(--(color="red"),quantity,price)

Explanation

To filter results of SUMPRODUCT with specific criteria, you can apply simple logical expressions directly to arrays in the function, instead of using the IF function. In the example shown, the formula in H5 is:

=SUMPRODUCT(--(color="red"),quantity,price)

Named ranges

The example uses several named ranges, for convenience only:

state=B5:B14
color=C5:C14
quantity=D5:D14
price=E5:E14

If you’d rather avoid named ranges, use the ranges above entered as absolute references.

How this formula works

This example illustrates one of the key strengths of the SUMPRODUCT function – the ability to filter data with basic logical expressions instead of the IF function. Inside SUMPRODUCT, the first array is a logical expression to filter on the color “red”:

--(color="red")

This results in an array or TRUE FALSE values, which are coerced into ones and zeros with the double negative (–) operation. The result is this array:

{1;0;1;0;0;0;1;0;0;0}

Notice the array contains 10 values, one for each row. A one indicates a row where the color is “red” and a zero indicates a row with any other color.

Next, we have two more arrays: one for quantity and one for price. Together with this results from the first array, we have:

=SUMPRODUCT({1;0;1;0;0;0;1;0;0;0},quantity,price)

Expanding the arrays, we have:

=SUMPRODUCT({1;0;1;0;0;0;1;0;0;0},{10;6;14;9;11;10;8;9;11;10},{15;18;15;16;18;18;15;16;18;16})

SUMPRODUCT’s core behavior is to multiply, then sum arrays. Since we are working with three arrays, we can visualize the operation as shown in the table below, where the result column is the result of multiplying array1 * array2 * array3:

array1 array2 array3 result
1 10 15 150
0 6 18 0
1 14 15 210
0 9 16 0
0 11 18 0
0 10 18 0
1 8 15 120
0 9 16 0
0 11 18 0
0 10 16 0

Notice array1 works as a filter – zero values here “zero out” values in rows where the color is not “red”. Putting the results back into SUMPRODUCT, we have:

=SUMPRODUCT({150;0;210;0;0;0;120;0;0;0})

Which returns a final result of 480.

Adding additional criteria

You can extend criteria by adding another logical expression. For example, to find total sales where the color is “Red” and the state is “TX”,  H6 contains:

=SUMPRODUCT(--(state="tx"),--(color="red"),quantity,price)

Note: SUMPRODUCT is not case-sensitive.

Simplifying with a single array

Excel pros will often simplify the syntax inside SUMPRODUCT a bit by multiplying arrays directly inside array1 like this:

=SUMPRODUCT((state="tx")*(color="red")*quantity*price)

This works because the math operation (multiplication) automatically coerces the TRUE and FALSE values from the first two expressions into ones and zeros.

Post navigation

Previous Post:

How to use Excel CHOOSE Function

Next Post:

Customize Ribbon In Excel

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Learn Basic Excel

Ribbon
Workbook
Worksheets
Format Cells
Find & Select
Sort & Filter
Templates
Print
Share
Protect
Keyboard Shortcuts

Categories

  • Charts
  • Data Analysis
  • Data Validation
  • Excel Functions
    • Cube Functions
    • Database Functions
    • Date and Time Functions
    • Engineering Functions
    • Financial Functions
    • Information Functions
    • Logical Functions
    • Lookup and Reference Functions
    • Math and Trig Functions
    • Statistical Functions
    • Text Functions
    • Web Functions
  • Excel VBA
  • Excel Video Tutorials
  • Formatting
  • Grouping
  • Others

Logical Functions

  • How to use Excel OR Function
  • How to use Excel FALSE Function
  • XOR function: Description, Usage, Syntax, Examples and Explanation
  • Extract multiple matches into separate rows in Excel
  • How to use Excel TRUE Function

Date Time

  • Get work hours between dates custom schedule in Excel
  • Add workdays no weekends in Excel
  • Count day of week between dates in Excel
  • How to calculate next day of week in Excel
  • Add days to date in Excel

Grouping

  • Group arbitrary text values in Excel
  • Categorize text with keywords in Excel
  • Group numbers with VLOOKUP in Excel
  • If cell contains one of many things in Excel
  • Map text to numbers in Excel

General

  • How to calculate decrease by percentage in Excel
  • How to get original price from percentage discount in Excel
  • Delete Blank Rows at Once in Excel
  • How to set or clear a print area in Excel Worksheet
  • How to get amount with percentage in Excel
© 2026 xlsoffice . All Right Reserved. | Teal Smiles | Abbreviations And Their Meaning