Excel精英培训网

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

[分享] 关于对EXCEL INDIRECT函数的奇怪用法的解释

[复制链接]
发表于 2012-4-1 22:06 | 显示全部楼层 |阅读模式
关于对EXCEL INDIRECT函数的奇怪用法的解释
原帖见: http://www.excelpx.com/thread-233456-1-1.html
我看了半天,看不明白,求高手解释此公式
一.  说实在的,要我说出个所以然来,也说不清,只能靠比尔盖茨来说了,EXCEL是他们做出来的,我们不可能看到EXCEL的源代码,它的运行机制如何也不知道,我们所做的,就是根椐他们所定的规则去运用它,为我们的工作带来便利,任何一个EXCEL高手,不能说是高手,只能说比一般的人多一点了解而已,EXCEL中究竟还有多少我们所不了解的,无从知道,在本论坛中涉及EXCEL的方方面面,是够多的了,但不能说,论坛中所有的知识已经穷尽了EXCEL的用法,这种观点你们可能不相信,反正我是信了.
二.  INDIRECT函数这种用法,估计用的人很少,我就在实际运用中说一点点体验,至于观点是否正确,大家不必计较,能用就用,不适用的话,且把它当作笑话罢了
首先列出它帮助中的说明,估计大家早已熟悉不过的了:
语法

  INDIRECT(ref_text,a1)
  Ref_text 为对单元格的引用,此单元格可以包含 A1-样式的引用、R1C1-样式的引用、定义为引用的名称或对文本字符串单元格的引用。如果 ref_text不是合法的单元格的引用,函数 INDIRECT 返回错误值#REF!。
  · 如果 ref_text 是对另一个工作簿的引用(外部引用),则那个工作簿必须被打开。如果源工作簿没有打开,函数 INDIRECT 返回错误值 #REF!。
  A1 为一逻辑值,指明包含在单元格 ref_text 中的引用的类型。
  · 如果 a1 为 TRUE 或省略,ref_text 被解释为 A1-样式的引用。
  · 如果 a1 为 FALSE,ref_text 被解释为R1C1-样式的引用。
示例

  
说明:如果在INDIRECT()中输入的是一个单元格区域,而单元格区域中含有对某些表示单元格地址的文本结果会怎样?如果区哉是同一列,比如B2:B16 结果会返回第一个单元格表示的引用,如果区域是几行几列的话,结果会是错误值了,因为它违背了此函数的规则了,无所适从了
不管怎样的错误,它表示的还是一个区域,只是结果是错误的了如图:
aaa1.jpg
                              
E1=indirect(B1:C20) 结果是错误,既然是错误,不要管它,我们的目的并不是要返回这单元格的所有内容,我想求和,于是加上SUM
Sum(indirect(B1:C20)),作为一个数组求和,记得按三键,表示成
{Sum(indirect(B1:C20))}
结果有了回报,返回了一个内存数组,如图:
aaa2.jpg
既然是内存数组,再来一次数组求和呢?
=SUM(SUM(INDIRECT(B1:C6))) 数组公式,终于有了最终结果,求和成功,但得注意,区域中不可有空单元格,否则会出错
在此公式中, SUM(SUM(INDIRECT(B1:C6)))改成average(SUM(INDIRECT(B1:C6))) 也是求和,可见起作用的是括号里的SUM了,而average(average(INDIRECT(B1:C6)))求平均数 sum(average(INDIRECT(B1:C6)))还是求平均数.
好了,就说到这, 不管白猫黑猫抓到耗子就是好猫

评分

参与人数 1 +5 收起 理由
ddmyykdzh + 5 赞一个!

查看全部评分

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-4-1 22:30 | 显示全部楼层
INDIRECT函数引用结果出错时,一般外套N函数(数值时)或T函数(文本时)就可以了:
=SUM(N(INDIRECT(B1:C6)))
=AVERAGE(N(INDIRECT(B1:C6)))

评分

参与人数 1 +4 收起 理由
xpw6061 + 4 很给力!

查看全部评分

回复

使用道具 举报

发表于 2012-4-20 16:57 | 显示全部楼层
回复

使用道具 举报

发表于 2012-9-18 22:05 | 显示全部楼层
qinqh_yl 发表于 2012-4-1 22:30
INDIRECT函数引用结果出错时,一般外套N函数(数值时)或T函数(文本时)就可以了:
=SUM(N(INDIRECT(B1:C ...

版主,我用这个公式求得的结果是第一个单元格的内容,不是最后的结果,是什么原因?请指点!
回复

使用道具 举报

发表于 2012-9-19 11:04 | 显示全部楼层
学习了,感谢分享
回复

使用道具 举报

发表于 2013-3-26 12:24 | 显示全部楼层
路过学习,十分感谢。
回复

使用道具 举报

发表于 2013-4-17 10:50 | 显示全部楼层
学习,学习,学以致用。
回复

使用道具 举报

发表于 2014-5-3 12:11 | 显示全部楼层

不错,好好学学。
回复

使用道具 举报

发表于 2015-8-1 13:55 | 显示全部楼层
了解了,实际应用更重要。
回复

使用道具 举报

发表于 2017-8-31 10:41 | 显示全部楼层
这公式实际意义是?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 16:00 , Processed in 0.184401 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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