我在Excel(2010)中使用SUMIFS功能遇到了一些麻烦。我想每周花一小时的时间,所以我需要一个SUMIF。这是一个例子:
在F5(和整个列F)中是这个函数:
=IF(OR(A6="",WEEKNUM(A6,2)<>WEEKNUM(A5,2)),SUMIFS(E$2:E6,G$2:G6,"="&G5),"")
在每周结束时对E中的所有值求和。
我想摆脱我现在需要的额外列G,而是使用WEEKNUM函数。然后F5中的函数看起来像这样
=IF(OR(A6="",WEEKNUM(A6,2)<>WEEKNUM(A5,2)),SUMIFS(E$2:E6,WEEKNUM(A$2:A6),"="&WEEKNUM(A5)),"")
但是这个例子不起作用。
有什么想法吗?
答案 0 :(得分:1)
你不能使用任何功能修改SUMIFS中的范围.....我也会说WEEKNUM不是最好的,因为你可能会在几年之间混淆;而且在一年的开始/结束时间也可能没有7天(因为第1周总是从1月1日开始,无论一周中哪一天 - 根据WEEKNUM的工作情况而言)。您可以更轻松地使用WEEKDAY
功能,例如在F5
=IF(OR(A6="",A5-WEEKDAY(A5,3)<>A6-WEEKDAY(A6,3)),SUMIFS(E$2:E5,A$2:A5,">="&A5-WEEKDAY(A5,3)),"")
使用WEEKDAY
查找上一个星期一,并根据该值汇总上周的任何内容 - 因此即使在12月/ 1月也可以使用