excel高级动态求和?在excel中,自动求和函数是_1

今天跟大家分享一个offset函数的使用方法 , 这个函数在Excel中的应用非常的广泛 , 可以用于制作动态图表 , 构建动态的引用区域 , 实现动态求和等等 , 可以说是Excel高手必备的函数之一 。
想要从零学习Excel , 这里↑↑↑↑
一、OFFSET函数的作用与参数
Offset函数:offset是一个偏移函数 , 它以一个单元格为基点进行偏移得到一个新的偏移区域
语法:=OFFSET(reference, rows, cols, [height], [width])
第一参数:偏移基点
第二参数:行数 , 向上或者向下偏移的行数
第三参数:列数 , 向左或者向右偏移的列数
第四参数:高度 , 返回引用区域的行高
第五参数:宽度 , 返回引用区域的列宽
我们需要注意的是offset函数获取的是一个数据区域 , 并不是一个具体的结果 , 比如在这里我们想要使用offset函数获取下图黄色的数据区域 , 只需要将函数设置为OFFSET(A1,3,2,4,2)即可

excel高级动态求和?在excel中,自动求和函数是_1

文章插图
这个函数就表示OFFSET函数会以A1单元为基点 , 先向下偏移3行来到A4单元格(张飞) , 然后再向右偏移2列来到C4单元格,随后以C4单元格为原点在行方向向下引用4行数据 , 在列方向向右引用2行数据 , 这个就是函数的偏移过程 。
因为offset获取的是一个数据区域 , 我们无法直接看到这个偏移的结果是不是正确的 , 这个时候可以考虑将offset函数嵌套在sum函数中 , 对偏移结果区域求和 , 通过求和结果来判断偏移结果是不是正确的 。
二、动态求和
跟大家拆分一个offset最经典的应用实例 , 就是实现动态求和 , 如下图 , 我们想要通过更改姓名与月份 , 获取这个人在指定时间段的数据之和 。
在这里我们只需要将公式设置为:=SUM(OFFSET(A1,MATCH(A16,A2:A11,0),MATCH(C16,B1:I1,0),1,MATCH(D16,B1:I1,0)-MATCH(C16,B1:I1,0)+1)) , 即可得到正确的结果 。
excel高级动态求和?在excel中,自动求和函数是_1

文章插图
跟大家简单的讲解下这个函数的参数与运算过程
第一参数:A1 , 这个就是offset函数偏移的基点
第二参数:MATCH(A16,A2:A11,0) , 它的作用是查找嫦娥这个姓名在数据源中姓名这一列的位置 , 结果为6 , 就表示基点会从A1开始向下偏移6行 , 来到A7单元格
第三参数:MATCH(C16,B1:I1,0) , 他的作用是查找开始月份(5月)在表头这一行中的位置 , 结果为5 , 就表示函数会A7单元格开始向右偏移5行 , 来到F7单元格 , 也正好是嫦娥5月份的数据
第四参数:1 , 因为在这里数据仅仅只有1行 , 我们将行数设置为1即可
第五参数:MATCH(D16,B1:I1,0)-MATCH(C16,B1:I1,0)+1) , 用于确定引用数据区域的列数 , 首先我们使用MATCH(D16,B1:I1,0)来查找一下结束月份(8月)在表头的位置 , 他的结果是8 , MATCH(C16,B1:I1,0)计算的是开始月份(5月)在表头 , 二者相减结果为3 , 但是在表格中5月到8月它是包含4列数据的 , 所以我们还需要为结果加1才可以得到正确的偏移区域 。
最后我们再使用offset函数对这个偏移的结果求和就会得到嫦娥5月到8月的数据之和 , 更改姓名与月份 , 这个时间就会自动地发生变化 , 非常的方便 , 如下图所示
excel高级动态求和?在excel中,自动求和函数是_1

文章插图
以上就是今天分享的全部内容 , offset函数虽然参数比较多 , 结果比较抽象 , 但是我们只需要理解它各个参数的含义 , 也是可以轻松掌握的 。
【excel高级动态求和?在excel中,自动求和函数是_1】我是Excel从零到一 , 关注我 , 持续分享Excel技巧
excel高级动态求和?在excel中,自动求和函数是_1

文章插图


    推荐阅读