如何在B列中对应于特定文本的前5个值进行求和?
我想添加一列的第一个“n”个数值的B表示B,当另一列的相应值表示同一行中的C等于某个“文本”时,
要做到非数组公式,我在D1中build议如下:
=IF((C1="text")*(COUNTIF(C$1:C1,"text")=5),SUMIF(C$1:C1,"text",B$1:B1),"")
并抄下来。
一种不同的方法将使用一个数组公式:
{=SUMIF(C1:INDEX(C1:C100,SMALL(IF(C1:C100="text",ROW(C1:C100)),5)),"text",B:B)}
这将一步完成整个工作;)
数据在B1到C20
在D1中input:
=IF(C1="text",1,"")
在D2中input:
=IF(AND(C2="text",COUNT($D$1:D1)<5),1,"")
并抄下来。 然后在另一个单元格input:
=SUMPRODUCT(D:D,B:B)
对于单个数组公式:
=SUMPRODUCT((ROW($C$1:$C$20)<=AGGREGATE(15,6,ROW($C$1:$C$20)/($C$1:$C$20="text"),5))*($C$1:$C$20="text")*$B$1:$B$20)