OFFSET函数到底怎么用?用在哪?简单一张表让你大彻大悟

2017-12-01  本文已影响0人  陶泽昱

小小的OFFSET函数让大家云里雾里,几度关心但从未彻底理解其精髓。从复杂的数据汇总到数据透视表乃至高级动态图表都离不开OFFSET函数。这些应用无论多复杂,只要我们理解OFFSET精髓,一切迎刃而解!

下面就用一张简陋而又简单的图例来理解OFFSET

1、将A1单元格内容克隆到D1单元格,在D1单元格输入=OFFSET(A1,0,0)D1显示产品

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512100072300.jpg

2、将OFFSET(A1,0,0)第二个参数0改成1,即改成=OFFSET(A1,1,0) ,写入D1单元格中,D1单元格显示“A”,如下图

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512100926770.jpg

3、如果将=OFFSET(A1,0,0)第二个参数改成2呢,想一下D1单元格会显示什么?

答案,如下图

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512101346179.jpg

相信大家已经看明白了,OFFSET(A1,2,0)的第二个参数,是以A1为基准,向下移动几个单元格。而第一个参数就是基准单元格。另外,第三个参数写几,就是以基准单元格向右移动几个单元格。

思考一下,要在D1单元格中克隆B3的内容,以A1为基准OFFSET参数应该怎么写。

D1单元格=OFFSET(A1,2,1),如下图:

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512101960363.jpg

现在,大家彻底明白OFFSET(A1,2,1)函数的这3个参数的作用了吧,OFFSET(基准单元格,纵向偏移,横向偏移)

但是OFFSET偏偏有5个参数,我们刚才只用了前3个参数,剩下两个是干嘛用的呢,有些伙伴是不是又开始头疼了。其实很简单,继续往下看。

我们把文章开篇第一幅图例搬下来,依然将A1单元格内容克隆到D1单元格,但是这次要修改一下参数,把OFFSET(A1,0,0)三个参数修改为OFFSET(A1,0,0,1,1)五个参数,写入D1单元格,3参数和5参数的输出结果一样,D3显示产品,如下图:

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512105186191.jpg

看到这里,大家以为,既然3参数和5参数输出结果相同,直接用3参数多简单?5参数恰恰就是OFFSET的精髓所在。

以下图为例,使用OFFSET函数一次性克隆A1B1 D1E1

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512106309162.jpg

现在把OFFSET第五个参数改动一下,由OFFSET(A1,0,0,1,1)改为OFFSET(A1,0,0,1,2),写入D3E3单元格,同时写入D3E3单元格?对!你没看错,我也没写错!关键就在这,怎么写入?

选择D3E3单元格,写入=OFFSET(A1,0,0,1,2)。注意!!!注意:写入后按下Ctrl+Shift+Enter,函数才能生效!!! 这就是为什么有些伙伴总出错的原因!!!

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512106235298.jpg

注意:函数两边的花括号,不是写上去的,按下Ctrl+Shift+Enter自动生成的!这就是数组概念,数组以后给大家介绍。先搞懂OFFSET!

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512106448285.jpg

到这里,大家应该领悟到第五个参数的真谛了吧,第五个参数是2,就是返回以第一个参数A2单元格为基准,横向两个单元格的内容,输出单元格也要同时选择横向两个单元格。不然,输出只选一个单元格的话 ,放不下, 它只能报错了!

那么,第四个参数干嘛用的? 就是克隆显示纵向的单元格数量。

思考下图,如何利用OFFSET一次性克隆A1:B2区域到D1:E2区域。

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512107553380.jpg

有些伙伴应该会做了,OFFSET(以A1单元格为基准,00,返回横向2个单元格区域,返回纵向2个单元格区域)。 这就是OFFSET()5个参数的原理!自己任意改改参数体会一下吧,同时输出显示多个单元格时候不要忘记按Ctrl+Shift+Enter

明白原理后,我们来看一个应用。

利用OFFSET的前3个参数,将多列转置成多行。

http://7xkq88.com1.z0.glb.clouddn.com/98474-temp-201712-01-1512112988738.jpg

A10单元格写入函数=OFFSET($A$1,COLUMN(A1)-1,ROW(A1)-1),填充A10:E11,就会看到上图的效果。在这里COLUMU(A1)返回“1”ROW(A1)返回“1”,所以解析A10单元格函数OFFSET(A1,0,0), 这样大家很容易就可以看懂了。

OFFSET所能完成任务远远不止这么简单,我会陆续给大家介绍更多应用。

最后,建议大家使用EXCEL20132016版本,没有的伙伴可以私信我,回复“2016”获取。

上一篇下一篇

猜你喜欢

热点阅读