At the core, this formula uses SUMPRODUCT to multiply then sum products of two arrays: array1 and array2. The first array, array1 is set up to act as a "filter" to allow only values that meet criteria.
Array1 uses a range that begins on the first column that contains values that must pass criteria. These "criteria values" sit in a column to the left of, and immediately adjacent to, the "data values".
The criteria is applied as a simple test that creates an array of TRUE and FALSE values:
This bit of the formula "tests" each value in the first array using the criteria supplied, then uses a double-negative (--) to coerce the resulting TRUE and FALSE values to 1's and 0's. The result looks like this:
Note that 1s correspond to columns 1,5, and 7, which meet the criteria of "A".
For array2 inside of SUMPRODUCT, we use a range that is "shifted" by one column to the right. This range starts with the first column contain values to sum and ends with the last column that contains values to sum.
So, in the example formula in J5, after the arrays have been populated, we have:
To sum every nth column, you can use a formula based on the SUMPRODUCT, MOD, and COLUMN functions. In the example shown, the formula in L5 is: = SUMPRODUCT ( -- ( MOD ( COLUMN ( B5:J5 ) - COLUMN ( B5 ) + 1 , K5 ) = 0 ), B5:J5 ) How this formula...
The SUMPRODUCT function multiplies ranges or arrays together and returns the sum of products. This sounds boring, but SUMPRODUCT is an incredibly versatile function that can be used to count and sum like COUNTIFS or SUMIFS, but with more...
Excel Formula Training
Formulas are the key to getting things done in Excel. In this accelerated training, you'll learn how to use formulas to manipulate text, work with dates and times, lookup values with VLOOKUP and INDEX & MATCH, count and sum with criteria, dynamically rank values, and create dynamic ranges. You'll also learn how to troubleshoot, trace errors, and fix problems. Instant access. See details here.