#VALUE! from SUMPRODUCT

  • Thread starter Thread starter gte
  • Start date Start date
G

gte

I have a problem with SUMPRODUCT. If I use this function:

=SUMPRODUCT($I$58:$I$108;OFFSET($H$58;58-ROW();0;51;1))

I get #VALUE! error.

But if I calculate

=58-ROW()

in a new cell (K58) and uses this cell instead:

=SUMPRODUCT($I$58:$I$108;OFFSET($H$58;K58;0;51;1))

then it works fine. What is wrong with the "58-ROW()" calculation inside the
OFFSET function?


Thanks in advance,
Regards,
 
I can't explain exactly what the cause is as it relates to OFFSET but the
problem is being caused by the ROW function. ROW returns an array. Even if
it's a single element it's still an array.

So, this is what's returning the error:

OFFSET($H$58,{n},0,51,1)

This will work:

=SUMPRODUCT($I$58:$I$108,OFFSET($H$58,58-INDEX(ROW(),1),0,51,1))
 
Was your original formula
=SUMPRODUCT($I$58:$I$108;OFFSET($H$58;58-ROW();0;51;1)) sitting in row 58?
If it wasn't, then it wouldn't return the same result.
 
That's it :-)

Thanks,

T. Valko said:
I can't explain exactly what the cause is as it relates to OFFSET but the
problem is being caused by the ROW function. ROW returns an array. Even if
it's a single element it's still an array.

So, this is what's returning the error:

OFFSET($H$58,{n},0,51,1)

This will work:

=SUMPRODUCT($I$58:$I$108,OFFSET($H$58,58-INDEX(ROW(),1),0,51,1))
 
Yes it is in row 58. But the problem is row(), this returns an array. Using
INDEX(ROW();1) returns an integer, then OFFSET works fine (see another
message in this thread)

Thanks for replies...
 
=SUMPRODUCT($I$58:$I$108;OFFSET($H$58;58-MAX(ROW());0;51;1))


--
---
HTH

Bob


(there's no email, no snail mail, but somewhere should be gmail in my addy)
 
Thanks for the reply

gte

Bob Phillips said:
=SUMPRODUCT($I$58:$I$108;OFFSET($H$58;58-MAX(ROW());0;51;1))


--
---
HTH

Bob


(there's no email, no snail mail, but somewhere should be gmail in my
addy)
 
Back
Top