SUMPRODUCT获得行+1
我有一个如下表格:
12/7/2012 AB 100 12/21/2012 AI 20 12/23/2012 AI 25 12/1/2013 AI 20 12/1/2014 AI 20
我想获得列D中的值,其中列B是“A”,列C是“我”。 我使用了一个sumproduct来获得D列中的值,但是我需要从B列为“A”而C列为“I”的地方往下走1行。 这是我的公式:
=SUMPRODUCT(--(B:B="A"),--(C:C="I"),F:F+1).
它应该返回值85,但它返回值为4。
你可以使用
=SUM((B1:B10="A")*(C1:C10="I")*(D2:D11))
作为使用Ctrl Shift Enter的数组公式
要么
=SUMPRODUCT(--(B1:B10="A"),--(C1:C10="I"),(D2:D11))
并尽可能扩大范围。
你的公式会发生什么?
=SUMPRODUCT(--(B:B="A"),--(C:C="I"),D:D+1)
就是它只是在D列的每一行中加1 .D1,D3,D5和D7是空单元,所以计为零。 因此,对于四个匹配的行,它将总数加1,结果是4。
如果=SUMPRODUCT(--(B:B="A"),--(C:C="I"),D:D+1)
可能只是巧合。 你可以通过一个副本进行检查,在删除D1和Shift单元格然后申请:
=SUMIFS(D:D,B:B,"A",C:C,"I")
或者您没有SUMIFS筛选器来删除ColumnA中不包含date的行,ColumnB中的A
和列C中的I
,然后求和ColumnD。
对于SUMIFS,@ Tom的SUMPRODUCT的替代可能是:
=SUMIFS(D2:D1000001,B1:B1000000,"A",C1:C1000000,"I")