我尝试计算每条“线”的总值如下,但是,计算只包含连续日期。
我尝试使用“sumif”函数但不能管理连续日期条件:
Date | Line |Performance
-------------------|--------|------------------
02-May-2017 | X |10
02-May-2017 | Y |82
03-May-2017 | X |31
03-May-2017 | Z |25
03-May-2017 | K |15
04-May-2017 | Y |60
05-May-2017 | Y |75
05-May-2017 | K |66
05-May-2017 | Z |43
06-May-2017 | Y |56
06-May-2017 | Z |67
预期结果:
X = 41 (2, 3 May 2017 as consecutive dates)
Y = 191 (4,5,6 May 2017)
Z = 110 (5,6 May 2017)
非常感谢任何帮助。
答案 0 :(得分:0)
首先,您需要一个辅助列(让它在D:D
中生成)以确定该行是否属于连续范围:
=OR(COUNTIFS($A:$A,$A2-1,$B:$B,$B2)>0,COUNTIFS($A:$A,$A2+1,$B:$B,$B2)>0)
然后你按照X, Y, Z
计算总和:
=SUMIFS($C:$C,$B:$B,"X",$D:$D,TRUE)
=SUMIFS($C:$C,$B:$B,"Y",$D:$D,TRUE)
=SUMIFS($C:$C,$B:$B,"Z",$D:$D,TRUE)
答案 1 :(得分:0)
CustomX的评论仍有待解决。
在此之前,并假设您选择了 Line ,例如E2
中的“{”,F2
中的数组公式** :
=SUM(IF(B$2:B$12=E2,IF(MMULT(0+ISNUMBER(MATCH(A$2:A$12-{1,-1},IF(B$2:B$12=E2,A$2:A$12),0)),{1;1}),C$2:C$12)))
向下复制,为E3
,E4
等中的行提供类似的结果。
**数组公式的输入方式与“标准”公式的输入方式不同。不要只按 ENTER ,而是先按住 CTRL 和 SHIFT ,然后再按 ENTER 。如果你已经正确地完成了它,你会注意到Excel在公式周围放置了大括号{}(虽然不要尝试自己手动插入这些)。