如何对任意连续区间进行求和函数(连续的区间怎么求)
导语:如何对任意连续区间进行求和?
相信我们做财务工作的同事都遇到过这种情况,诸如下表,我们经常要对一年的数据进行汇总,有时还需要对各月或季度的数据进行求和汇总,那么我们如何利用一套公式来实现这个功能呢,也就是说在一年十二个月中对任意连续的月份进行求和。
需要求和汇总的数据
要实现这个功能,我们首先了解一下Excel的OFFSET()函数,该函数是以指定的单元格或相连单元格区域的引用为参照系,通过给定偏移量得到新的引用,返回的引用可以是一个单元格,也可以是一个区域,可以指定行列数。
OFFSET函数的语法格式:
=OFFSET(reference,rows,cols,height,width)
=OFFSET(参照单元格,行偏移量,列偏移量,返回几行,返回几列)
案例运行结果
在该案例中,我们在D1、D2单元格中选取开始月份及结束月份,再用SUM函数去求大于等于D1单元格的月份、小于等于D2单元格的月份区间的和,主要就是利用OFFSET()函数来选取这个区间。
我们就用O3单元格的公式介绍其计算过程,O3单元格公式如下:
=SUM(OFFSET(E3,0,VLOOKUP($D$1,$A$2:$B$13,2,0),1,VLOOKUP($D$2,$A$2:$B$13,2,0)-VLOOKUP($D$1,$A$2:$B$13,2,0)+1))
OFFSET()函数的参数设置如下:
“E3”,以“E3”单元格为参照系;
“0”,行不偏移,表示选取本行单元格;
“VLOOKUP($D$1,$A$2:$B$13,2,0)”,列偏移量,首先取“D1”单元格的值,也就是开始的月份,用VLOOKUP在区间“$A$2:$B$13”中找出月份对应的数值,其数值就是列偏移量,例如“一月”,对应值为“0”,表示列不偏移,因为我们以“E3”单元格作为参照系的,当选取“五月”,就是以“E3”单元格为参照系向右偏移4列;
“1”,表示返回1行;
“VLOOKUP($D$2,$A$2:$B$13,2,0)-VLOOKUP($D$1,$A$2:$B$13,2,0)+1”,表示返回多少列,先取“D2”单元格的值,同理取出月份对应的偏移量,减去“D1”单元格月份对应的偏移量,再加“1”,例如我们开始月份为五月,对应为“4”,结束月份为八月,对应为“7”,其实我们要显示五月到八月,共4个月的值,所以要“7-4+1”。
这样我们就通过OFFSET函数确定了求和区间。
我们在“D1”、“D2”单元格中利用“数据验证”取得开始和结束的月份,其取值序列为“A2:A13”,为了不能出现结束月份小于开始月份,我们在“D2”单元格的“数据验证”中用了“INDIRECT”函数,让其取值范围以“D1”单元格选取值的变化而变化。
案例数据验证
例如上图,我们选取“七月”到“十二月”,通过公式可以看出其求和的值为“7+8+9+10+11+12”,选取“一月”到“六月”,通过公式可以看出其求和的值为“1+2+3+4+5+6”。
通过以上设置,我们就达到了对任意连续区间进行求和的目的。
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小莉创作整理编辑!