我有以下两个用例:
列A -一个较长的日期序列。日期可以重复。
列B -一个简短的日期序列,日期是唯一的,但在值上不一定是顺序的。
列C -与较长的日期序列相关联的较长的值序列。
我的目标是-对于B列中的每个值,查找A列中的所有值,设置为true或1,然后在C列中选择与A列中的特定值相关联的值,并对所有值进行求和。
= SUMPRODUCT((B1:Bn=A1:Am)*(C1:Cm))N
我还尝试使用
= SUMPRODUCT((B1:Bn=A1:Am)*(1))
我也尝试过这两个数组,在每种情况下,我都得到了N/A。
发布于 2016-10-21 19:04:36
用SUMPRODUCT()包装SUMIF():
=SUMPRODUCT(SUMIF(A:A,B1:INDEX(B:B,MATCH(1E+99,B:B)),C:C))由于SUMPRODUCT是一个数组类型公式,我们需要限制B列中的范围,因为它将遍历该引用中的每个单元格。
B1:INDEX(B:B,MATCH(1E+99,B:B))将返回一个以B1开头的范围,并返回到B列中包含一个数字的最后一个单元格,从而将迭代限制在那些有值的单元格中。

https://stackoverflow.com/questions/40183267
复制相似问题