本篇适合:有一定公式基础者。
如图-1,需求是累计求和,其逻辑为:
6.1累计=6.1
6.2累计=6.1+6.2
6.3累计=6.1+6.2+6.3
...
在介绍累计求和公式前,我们先看一下单日求和,也挺有意思
01
单日求和
如图-2,左侧是截取的原始数据,右上为单日求和。H3处公式:
=SUMIFS($D:$D,$E:$E,H$2,$C:$C,$G3),向右向下填充。
☆重点掌握:半绝对引用。(即H$2与$G3。)
02
累计求和
累计求和有两种思路:一是沿用sumifs公式,适合小数据量情况;二是在单日求和基础上,用sum+offset公式,适合大数据量情况。
①sumifs公式
如图-3,H8处公式:
=SUMIFS($D:$D,$E:$E,">="&$H$7,$E:$E,"<="&H$7,$C:$C,$G3)。向右向下填充。
☆重点掌握:不管是(多)条件求和函数,还是(多)条件计数函数,当条件中包含不等号时,须加双引号,且引用单元格须用符号&连接。
sumifs公式,据原始数据计算,数据越多计算量越大,适合小数据量情况。
②sum+offset公式
如图-4,H8处公式修改为:
=SUM(OFFSET($G$3,ROW(A1)-1,1,,COLUMN(A1)))。向右向下填充。
本公式依据单日求和结果,计算量相对较小,适合大数据量情况。
公式解析(适合小白,最好打开表格,跟着演示操作一遍):
解读公式,一般从里向外读。这是offset作为sum函数参数的公式。外层sum函数很简单,略去不谈;我们直接看offset函数。
既然offset能作为sum的参数,可推断,其返回结果,应是某个单元格区域(或者说数组)。
那么怎样来确定这个区域呢,offset函数提供了5个参数:前3个用于精确定位,后2确定区域大小。
参照区域:好比锚点。
行、列数:行数指向下移动几行,不填默认0;列数指向右移动几行,不填默认0。
如图-6,C16处公式:=OFFSET(B12,,),意思是以B12为锚点,向下移动0行,向右移动0列,返回高度1宽度1(宽高度不填,默认为1)的单元格区域,即返回B12,结果显示“参照区域”。
若想:以B12为锚点,向下移动1行,向右移动1列,返回高度1宽度1(宽高度不填,默认为1)的单元格区域,即返回C13,公式该如何设置呢:
=OFFSET(B12,1,1)。
同理,若选中C18:D18,输入数组公式:{=OFFSET(B12,1,1,1,2)},应是以B12为锚点,向下1行,向右1行,返回高度1宽度2的区域,即返回C13:D13,如图:
最后再复习一下:offset函数提供了5个参数:前3个精确定位,后2确定区域大小!
微信公众号:闲钓宇哥