
在工作中偶尔会遇到求MTD、YTD或者最近一周某个产品的销售额,而且需要根据日期的变化动态求和。下面给大家介绍两个方法动态求和,可以对一维表或者二维表进行动态求和。
1、使用SUM+OFFSET对二维表进行动态求和SUM函数比较常用就不给大家介绍了,下面说一下比较陌生的OFFSET函数: OFFSET(起始坐标,从坐标开始算的行数,从坐标开始算的列数,高,宽) OFFSET(reference,rows,cols,height,width) OFFSET(起始坐标,从坐标开始算的行数,从坐标开始算的列数,高,宽)

示例:求芒果最近一周的合计数,函数为SUM(OFFSET(A1,MATCH(A14,A2:A9,0),MATCH(B14,B1:M1,0),1,7)),其中MATCH(A14,A2:A9,0)是匹配芒果在A2:A9所在区域的行数,MATCH(B14,B1:M1,0)是匹配开始日期2022/6/2在B1:M1区域的列数。整体函数的解释就是,在A1单元格,向下第6行,向右第2列开始,返回1行7列(也就是C7:I7)区域的值,然后进行SUM求和。注:match函数讲解请查看:比vlookup好用的查找组合match+index

2、使用SUMIFS函数对一维表进行动态求和SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

示例:求芒果最近一周的合计数,函数为SUMIFS(C:C,A:A,">="&F4,A:A,"<="&G4,B:B,E4),C:C是求和区域;A:A是第一个条件">="&F3的查找区域,也就是选取">="2022/6/2的值;A:A也是第二个条件"<="&G4的查找区域,也就是选取"<="2022/6/8的值;B:B列是第三个条件“芒果”的查找区域。综上,就是选取日期区间为:2022/6/2-2022/6/8期间属性叫“芒果”的C:C列的值进行求和。
