Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1787|回复: 5

[已解决]能帮忙解释个函数么?

[复制链接]
发表于 2010-6-27 17:44 | 显示全部楼层 |阅读模式

新人啦。光看书没看明白

=OFFSET(SHEET1!$A$#,0,0,COUNTA(SHEET1!$A:$A)-1)

我是特别不明白COUNTA这个函数在这里起的什么作用

最佳答案
2010-6-27 19:04

OFFSET函数的语法:

OFFSET(reference,rows,cols,height,width)

我的理解:

OFFSET(单元格,偏移行数(本身为0),偏移列数(本身为0),引用区域的行数(本身为1),引用区域的列数(本身为1))

OFFSET函数第1、2、3参数是必须填的(如为0也可不输入,但必须用“,”号,说明已经默认输入0),但第4、5参数可以不填,不填即表示引用偏移后的单元格1×1的区域(即引用偏移后的单元格)

QUOTE:
以下是引用ctrctr2000在2010-6-27 17:44:00的发言:

新人啦。光看书没看明白

=OFFSET(SHEET1!$A$#,0,0,COUNTA(SHEET1!$A:$A)-1)

我是特别不明白COUNTA这个函数在这里起的什么作用

这里的第2、3参数都为0,表示不偏移

第4参数用COUNTA(SHEET1!$A:$A)-1 第4参数的值用counta函数计算而得

如 counta函数得到的值是2,就引用第1参数表示的单元格和下一个单元格,2行1列的区域

举例:OFFSET(A1,0,0,COUNT(A:A)-1),

如COUNT(A:A)-1=2, 那OFFSET(A1,0,0,COUNT(A:A)-1)=OFFSET(A1,0,0,2)=引用A1:A2区域

如COUNT(A:A)-1=3, 那OFFSET(A1,0,0,COUNT(A:A)-1)=OFFSET(A1,0,0,3)=引用A1:A3区域

LZ这个公式一般用于动态引用区域,根据A列的输入行的多少,动态引用A列的值。多用于用数据有效性的下拉列表、动态图表、动态数据透视表 或 被用做于复杂数组函数的差数,是个比较常用的函数套路

[此贴子已经被作者于2010-6-27 19:21:29编辑过]
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2010-6-27 19:04 | 显示全部楼层    本楼为最佳答案   

OFFSET函数的语法:

OFFSET(reference,rows,cols,height,width)

我的理解:

OFFSET(单元格,偏移行数(本身为0),偏移列数(本身为0),引用区域的行数(本身为1),引用区域的列数(本身为1))

OFFSET函数第1、2、3参数是必须填的(如为0也可不输入,但必须用“,”号,说明已经默认输入0),但第4、5参数可以不填,不填即表示引用偏移后的单元格1×1的区域(即引用偏移后的单元格)

QUOTE:
以下是引用ctrctr2000在2010-6-27 17:44:00的发言:

新人啦。光看书没看明白

=OFFSET(SHEET1!$A$#,0,0,COUNTA(SHEET1!$A:$A)-1)

我是特别不明白COUNTA这个函数在这里起的什么作用

这里的第2、3参数都为0,表示不偏移

第4参数用COUNTA(SHEET1!$A:$A)-1 第4参数的值用counta函数计算而得

如 counta函数得到的值是2,就引用第1参数表示的单元格和下一个单元格,2行1列的区域

举例:OFFSET(A1,0,0,COUNT(A:A)-1),

如COUNT(A:A)-1=2, 那OFFSET(A1,0,0,COUNT(A:A)-1)=OFFSET(A1,0,0,2)=引用A1:A2区域

如COUNT(A:A)-1=3, 那OFFSET(A1,0,0,COUNT(A:A)-1)=OFFSET(A1,0,0,3)=引用A1:A3区域

LZ这个公式一般用于动态引用区域,根据A列的输入行的多少,动态引用A列的值。多用于用数据有效性的下拉列表、动态图表、动态数据透视表 或 被用做于复杂数组函数的差数,是个比较常用的函数套路

[此贴子已经被作者于2010-6-27 19:21:29编辑过]
回复

使用道具 举报

 楼主| 发表于 2010-6-27 19:37 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2010-6-27 19:45 | 显示全部楼层

额。。。。又糊涂了。我是要插入新的值,为什么引用区域是COUNTA()-1而不是+1呢
回复

使用道具 举报

发表于 2010-6-28 15:42 | 显示全部楼层

QUOTE:
以下是引用ctrctr2000在2010-6-27 19:45:00的发言:
额。。。。又糊涂了。我是要插入新的值,为什么引用区域是COUNTA()-1而不是+1呢

  可能你这里引用的地方有个表头,故-1,你可以选中COUNTA()-1,然后F9 运行一下  就知道了。

  这个公式一般用于动态引用,随着数据的不断添加,其引用的行数也自动增加。

刚开始学excel的时候,觉得自己超笨。这个offset怎么也看不懂,或者看过就忘了。现在看多了,一通百通。呵呵

回复

使用道具 举报

发表于 2010-7-4 18:01 | 显示全部楼层

学习最佳

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-17 05:36 , Processed in 0.280502 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表