首页officeexcel正文

Indirect函数里的参数要不要加引号?

强国说学习2023-04-2037Indirect函数

=Indirect("a2")=Indirect(a2)

以上两个公式究竟哪个对哪个错?现实中该怎么用?相信很多刚才开始学习Indirect的同学都被迷惑过。其实,只要A2里输入恰当的内容,两个都对,只不过结果不同而已,是不是更迷惑了?

我们还是先从Indirect的身世说起吧:Indirect是个间接引用函数,说白了,他就是个引用,比如我们要引用A2单元格里的内容,最简单的直接引用,就是直接“=A2”,除此之外,还有一种间接引用的方式,就是用函数公式来引用A2这个单元格的地址。好吧,既然要用函数公式,那就得遵守函数公式的规则:等号&函数名&左括号&参数&右括号,那么在这里,间接引用的函数名是“Indirect”,参数是“A2”这个单元格的地址,注意啊,这里是“地址”,所以在函数中是要用一对引号引起来,不能因为他长得像单元格引用就拿他当单元格引用来用。完整的函数公式就应该写成:=Indirect("a2")

这个,才是Indirect行号列标间接引用的原型!

不用引号又会怎么样呢?那就完全变味了:=Indirect(A2)

看看,这一溜8个公式,只有最后两个出结果了,而且还是稀奇古怪的结果,这又是怎么来的呢?大脑思考有难度那就换用膝盖思考吧:Indirect的参数必须是单元格地址,而A2里的内容是一个数字15,很明显和单元格地址扯不上任何关系嘛,所以就错了,后面的几个也是同样的道理,谁的工作表一打开,里面会有个叫“甲”的单元格?除非设置了自定义。当公式引用到A8时,A8单元格里的内容是F5,所以这公式就是间接引用了A8单元格里的地址“F5”的内容,不幸的是F5里没内容,所以就0了。最后一个,公式是间接引用了A9单元格里的地址C8,而C8里的内容刚才是“F5”……嘿嘿,所以就F5了。要不您试试公式求值(公式》公式审核》公式求值),看看结果是什么,是不是由“Indirect(A9)”变成了“Indirect("C8")”?

强国说qiangguoshuo.com

至于Indirect的以下变种:

=INDIRECT("A"&公式)=INDIRECT("R"&公式&"C"&公式,)=INDIRECT(TEXT(11,"R0C0"),)

归根结底,都是要制造出一堆长得像单元格地址的字符串出来,这样才好作为Indirect的参数,把那个地址里的内容给引出来。

如想转载该文章请注明出处:强国说学习-qiangguoshuo.com
强国说学习

转载声明:本站发布文章及版权归原作者所有,转载本站文章请注明文章来源!

本文链接:https://www.qiangguoshuo.com/excel/72578.html