http://www.pptjcw.com

excel vba教程:说说函数中的极品――OFFSET

    说起OFFSET函数,真的是像雾像雨又像风,从复杂的数据汇总、到数据透视表再到高级动态图表,都离不开OFFSET函数的默默付出。

    通过OFFSET函数,可以生成数据区域的动态引用,这个引用再作为半成品,通过后续的处理加工,就可以为图表和透视表提供动态的数据源、为其他函数生成特定的引用了。

    首先,咱们说说这个函数的作用,微软的帮助文件是这样描述的:

    以指定的引用为参照系,通过给定偏移量返回新的引用。

    瞧瞧,这么简单的几句话,让人家怎么能猜透你的心思嘛。

    这个函数有5个参数:

    第一个参数是基点

    第二个参数是要偏移几行,正数向下,负数向上。

    第三个参数是要偏移几列,正数向右,负数向左。

    第四个参数是新引用几行。

    第五个参数是新引用几列。

    如果不使用第四个和第五个参数,新引用的区域就是和基点一样的大小。

    如果使用下面这个公式:


    =OFFSET(C3,4,2,4,3)

    就是以C3为基点,向下偏移4行,向右偏移2列,新引用的行数是4行,新引用的列数是3列,最终得到对E7:G10单元格区域的引用。


    excel vba教程:说说函数中的极品――OFFSET



    当然,仅仅得到引用是没啥用处的,咱们的目的是把OFFSET函数得到的引用作为一个半成品,再通过其他方法进行再加工。

    这么说还是有点抽象啊,再来一个形象一点的:

    OFFSET函数就像是一个鬼子小分队,从据点董家庄(C3)出动,顺着大路向南走4里(C7)


    excel vba教程:说说函数中的极品――OFFSET



    拐弯儿再向东2里,这时候就到马家河子(E7)了


    excel vba教程:说说函数中的极品――OFFSET



    鬼子队长说了,我要以马家河子(E7)这个地方开始,再占领一片地盘。有多大呢?向南4里,向东3里。


    excel vba教程:说说函数中的极品――OFFSET



    吆西,结果就是E7:G10单元格区域了。

    简单认识了OFFSET函数,咱们再用一个动态图表的制作,来说说OFFSET函数的实际应用。

    OFFSET函数和动态图表之间,属于是“见不得人”的关系。

    所谓动态图表,就是能根据指定的条件,自动变化图表数据源,使图表能够按照我们指定的规则,动态显示数据中的重点关注部分。

    说“见不得人”,是指不能在图表中直接使用OFFSET函数,而是要将OFFSET函数先定义成名称,然后在图表中使用自定义名称作为数据源。

    看下面这个题目:

    这个销售流水记录中,每天都要不断的添加数据。现在要制作一个图表,仅展示最近7天的销售状况。


    excel vba教程:说说函数中的极品――OFFSET



    首先,在【公式】选项卡下,单击【定义名称】,分别定义两个名称:


    日期=OFFSET($A$1,COUNT($A:$A),0,-7)
    销售额=OFFSET($B$1,COUNT($A:$A),0,-7)



    excel vba教程:说说函数中的极品――OFFSET



    说说定义名称日期这个公式的意思:

    COUNT函数对A列数值计数,结果作为OFFSET函数的行偏移参数。

    OFFSET函数以A1为基点,向下偏移的行数是COUNT的结果,也就是A列有多少个数值,就向下偏移多少行。

    这时候就相当于到了A列数值的最后一行,给定的偏移列数是0,新引用的行数是-7,得到从A列数值的最后一行开始,向上7行这样一个动态的区域。

    如果A列的数值增加了,COUNT函数的计数结果就增加了,OFFSET函数的行偏移参数也就随之变化。

    就相当于一竿子捅到底,然后来个烧鸡大窝脖儿,向上引用7行,所以得到的始终是最后7行的引用。

    接下来,按下图步骤插入一个柱形图。


    excel vba教程:说说函数中的极品――OFFSET



    右键单击数据系列,选择数据源


    excel vba教程:说说函数中的极品――OFFSET



    设置数据系列的系列值为:

    =Sheet2!销售额

    这里的Sheet2,是数据源工作表的名称。销售额,就是定义的名称。

    设置轴标签的区域为:

    =Sheet2!日期

    OK了,以后我们只要不断的在数据源表格中添加数据,这个图表就始终显示的是最近7天的数据变化了。

    最后别忘了,再对图表进行简单的美化,收工了——

    今天只是讲了OFFSET函数的基本用法,其实她还有很多更加复杂的引用方式,需要咱们一点点的学习领悟。只要功夫深,金箍棒也能磨成针。
    提示:如果您觉得本文不错,请点击分享给您的好友!谢谢

    上一篇:excel表格教程:制作项目文件目录表 下一篇:excel表格制作:短平快!不用公式也能多条件查询

    郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。