excel|Excel 说说函数中的极品——OFFSET


excel|Excel 说说函数中的极品——OFFSET
文章图片
excel|Excel 说说函数中的极品——OFFSET
文章图片
excel|Excel 说说函数中的极品——OFFSET
文章图片
excel|Excel 说说函数中的极品——OFFSET
文章图片
说起OFFSET函数 , 真的是像雾像雨又像风 , 从复杂的数据汇总、到数据透视表再到高级动态图表 , 都离不开OFFSET函数的默默付出 。 通过OFFSET函数 , 可以生成数据区域的动态引用 , 这个引用再作为半成品 , 通过后续的处理加工 , 就可以为图表和透视表提供动态的数据源、为其他函数生成特定的引用了 。 首先 , 咱们说说这个函数的作用 , 微软的帮助文件是这样描述的:以指定的引用为参照系 , 通过给定偏移量返回新的引用 。 瞧瞧 , 这么简单的几句话 , 让人家怎么能猜透你的心思嘛 。 这个函数有5个参数:第一个参数是基点第二个参数是要偏移几行 , 正数向下 , 负数向上 。 第三个参数是要偏移几列 , 正数向右 , 负数向左 。 第四个参数是新引用几行 。 第五个参数是新引用几列 。 如果不使用第四个和第五个参数 , 新引用的区域就是和基点一样的大小 。 如果使用下面这个公式:=OFFSET(C34243)就是以C3为基点 , 向下偏移4行 , 向右偏移2列 , 新引用的行数是4行 , 新引用的列数是3列 , 最终得到对E7:G10单元格区域的引用 。
当然 , 仅仅得到引用是没啥用处的 , 咱们的目的是把OFFSET函数得到的引用作为一个半成品 , 再通过其他方法进行再加工 。 这么说还是有点抽象啊 , 再来一个形象一点的:OFFSET函数就像是一个鬼子小分队 , 从据点董家庄(C3)出动 , 顺着大路向南走4里(C7)
拐弯儿再向东2里 , 这时候就到马家河子(E7)了
鬼子队长说了 , 我要以马家河子(E7)这个地方开始 , 再占领一片地盘 。 有多大呢?向南4里 , 向东3里 。
吆西 , 结果就是E7:G10单元格区域了 。 简单认识了OFFSET函数 , 咱们再用一个动态图表的制作 , 来说说OFFSET函数的实际应用 。 OFFSET函数和动态图表之间 , 属于是“见不得人”的关系 。 所谓动态图表 , 就是能根据指定的条件 , 自动变化图表数据源 , 使图表能够按照我们指定的规则 , 动态显示数据中的重点关注部分 。 说“见不得人” , 是指不能在图表中直接使用OFFSET函数 , 而是要将OFFSET函数先定义成名称 , 然后在图表中使用自定义名称作为数据源 。 看下面这个题目:这个销售流水记录中 , 每天都要不断的添加数据 。 现在要制作一个图表 , 仅展示最近7天的销售状况 。
首先 , 在【公式】选项卡下 , 单击【定义名称】 , 分别定义两个名称:日期=OFFSET($A$1COUNT($A:$A)0-7)销售额=OFFSET($B$1COUNT($A:$A)0-7)
说说定义名称日期这个公式的意思:COUNT函数对A列数值计数 , 结果作为OFFSET函数的行偏移参数 。 OFFSET函数以A1为基点 , 向下偏移的行数是COUNT的结果 , 也就是A列有多少个数值 , 就向下偏移多少行 。 这时候就相当于到了A列数值的最后一行 , 给定的偏移列数是0 , 新引用的行数是-7 , 得到从A列数值的最后一行开始 , 向上7行这样一个动态的区域 。 如果A列的数值增加了 , COUNT函数的计数结果就增加了 , OFFSET函数的行偏移参数也就随之变化 。 就相当于一竿子捅到底 , 然后来个烧鸡大窝脖儿 , 向上引用7行 , 所以得到的始终是最后7行的引用 。 接下来 , 按下图步骤插入一个柱形图 。