Excel中特别有用的不常用函数之Offset函数
在几百个Excel的函数中,OFFSET的地位有点特别。一方面,有很多人根本不了解这个函数,甚至不知道它的存在。另一方面,在基本上稍微复杂一点的场景中,都可以看到OFFSET的影子。
今天,我就为大家介绍一下这个函数和它的用法。
01
语法
OFFSET函数的说明是这样的:
又是参照系,又是偏移量,听着就很头疼,我想这是很多人对这个函数觉得头疼的一个原因吧。
还要注意,这个返回返回的是个“新的引用”,这个意思是这个函数返回的是个单元格或者单元格区域,能做到这一点的函数在Excel中并不多见。
我们接着来看语法吧:
这个函数有5个参数,其中,第一个参数是“参照系”,是一个单元格,表示接下来的操作以这个单元格为基准。
rows和cols表示从这个基准偏移的行数和列数:
前三个参数的意思是以B6为基准,在行方向上向下偏移3行,列方向上向右偏移2列,于是就来到了D9区域,
第四个参数heights,表示高度,即返回的单元格区域从D9开始,共10行。
第5个参数width,表示宽度,即返回的单元格区域从D9开始,共5列,
这个函数返回的是D9:H17的区域
但是,如果你输入完成后,回车,会发现公式返回了错误值:
这都是因为这个公式返回的是个区域,你在一个单元格中输入这个公式结果当然不对了。
一般来说,很少单独使用OFFSET,往往我们结合其他函数一起使用。比如下面这个公式:
=SUM(OFFSET(B6,3,2,10,5))
这次,我们在H7单元格输入一个值:1.8:
这回,很清楚的揭示了:
OFFSET返回的是个区域
01
几个例子
下面通过三个例子来解释一下这个函数的运行方式:
例1
公式:
=OFFSET(B6,-2,0,1,1)
返回下图的蓝色区域
这个公式与下面的公式等价:
=OFFSET(B6,-2,0)
因为返回区域的高度和宽度缺省情况下与引用区域(基准)一致
例2
公式:
=OFFSET(B6:C11,10,0)
返回下图的蓝色区域,
因为返回区域的高度和宽度缺省情况下与引用区域(基准)一致
例3
下面的公式是经常用到的,
=SUM(B3:OFFSET(B2,F1,0))
这个例子中的OFFSET部分的第2个参数是用F1单元格,因此是可变的。整个公式的意思是从B3开始一直到下面N行(N由F1单元格确定)进行求和。
这个例子也再次说明了OFFSET函数返回的是个区域。
这个公式实现的目标可以用另外的OFFSET来实现,你能写出来吗?
好了,今天的分享就到这里了!