I think the problem may be that some of the values in column O are DIV/0 errors. I must admit I did not test with these errors in place. Try taking these errors out or replacing them with numbers.

With regard to how SUMPRODUCT works, the first array argument checks down column L and returns a single dimensional array of TRUE and FALSE’s depending on which cells in the array are equal to C2. So for example, if the second and fourth items in the array are equal to C2 then it will return FALSE,TRUE,FALSE,TRUE. By putting the double minus symbol in front, it coerces the TRUE’s and FALSE’s into their numerical equivalents so you get 0,1,0,1.

Then the second array argument does the same comparing column M to A2 so let’s say that the first and fourth items in column M were equal to A2 then the array argument would return 1,0,0,1. SUMPRODUCT then multiplies the 2 arrays together:

0x1=0

1x0=0

0x0=0

1x1=1

So now you have a new array: 0,0,0,1. The final array argument for column O has no requirements to be equal to anything, etc, so it fills the array with the values in column O. Let’s say that in column O you have the values 10,12,14,16. SUMPRODUCT multiplies this array to the one we got earlier:

0x10=0

0x12=0

0x14=0

1x16=16

And then adds it all together giving the result 16. What it has basically done is added together all of the values in column O where its equivalent values in columns L and M meet the criteria you have set.

Hope that all makes sense!