如何通过中间值获取数据的INDIRECT函数
时间:2022-05-30 06:25:49
INDIRECT函数接受2个参数,第1个参数是代表单元格引用的字符串,第2个参数指定单元格引用的样式,然后返回第1个参数指定的引用单元格中的数据。
INDIRECT函数的基本使用如图1所示。
图1
INDIRECT函数之美
INDIRECT函数分析其参数所引用的单元格并获取该单元格中的值,参数中放置着数据的单元格地址,仿佛C语言中的指针,具有解析之美。
获取指定的单元格地址所引用的单元格值
如下图2所示的工作表,在单元格E8中是有效的单元格地址,单元格E9中的公式使用单元格E8作为参数,获取该单元格中的值所指定的单元格中的值:
=INDIRECT(E8)
当单元格E8中的单元格地址改变时,E9中获取的值相应变化。
图2
如下图3所示,将要获取值的单元格行号列标分别放在两个单元格中,然后使用这两个单元格作为INDIRECT函数的参数提取其组成的单元格地址中的值:
=INDIRECT(E8 & E9)
示例中是单元格B5中的值,你可以改变行号列标返回不同的值。
图3
总是引用固定的单元格
如图4所示,使用公式:
=IF(ISBLANK(INDIRECT(“B5″)),”值为空“,”正常“)
无论删除行还是插入行,或是将B5剪切并粘贴到其他地方,公式将总是指向单元格B5。
图4
获取命名区域引用的单元格的数据
如图5所示,将每列数值以列标题命名,设置单元格C4的数据有效性为序列,值为单元格区域B1:E1中的数据,即为列区域的名称。
在单元格B9中的公式为:
=C8 &”的销量为:”
在单元格C9中的公式为:
=SUM(INDIRECT(C8))
这样,选择单元格C8下拉列表中的某值后,单元格C9会自动进行计算,B8也会相应更新。
图5
获取另一工作表中的数据
如图6所示,在班级工作表中,语文、数学、英语的平均分都在相同位置的单元格B2中,现在要将它们提取汇总到图6的工作表中,在单元格B3中的公式为:
=INDIRECT(“‘” &B$2 & “‘!” & “B2”)
将其向右拖到单元格D3,即可获取各个班级的语文平均分。
图6
然而,由于单元格B2是硬编码,将公式向下拖动时,仍然得到的是语文平均分。此时,我们可以使用R1C1样式的公式获取数值,在单元格B3中输入公式:
=INDIRECT(“‘” &B$2 & “‘!R[-1]C2”,FALSE)
向右向下拖动,即可获取其他工作表中相应的数据。
图7
注:也可以使用CELL函数或者ADDRESS函数达到同样的效果。
为ROW函数提供合法的参数
Excel不允许以下面的形式输入:
ROW(1:LEN(A1))
此时,可以通过INDIRECT函数来达到:
ROW(INDIRECT(“1:” & LEN(A1))
Excel会将其转换为INDIRECT(“1:5”)并传递给ROW函数。
这还有一个好处,就是当拖动公式时,由INDIRECT函数得到的数值不会随单元格的变化发生变化,避免了公式因为相对引用发生错误。
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
win10找不到gpedit.msc怎么办?win10找不到gpedit.msc的解决方法
![](https://img.aspxhome.com/file/2023/5/47655_0s.jpg)
Win10系统更换网络后连不上网络打印机怎么办?
![](https://img.aspxhome.com/file/2023/8/49438_0s.jpg)
Word2007提示"宏已被禁用"怎么办
![](https://img.aspxhome.com/file/2023/0/19840_0s.jpg)
如何在Word的页眉页脚里添加时间
![](https://img.aspxhome.com/file/2023/7/18317_0s.jpg)
word 文档目录制作实例教程
![](https://img.aspxhome.com/file/2023/8/33328_0s.gif)
为文档添加个性化落款的方法
word中怎样调整脚注的格式
在word文档中如何设置文件的显示比例?
![](https://img.aspxhome.com/file/2023/2/24782_0s.jpg)
Excel表格如何快速筛选?
![](https://img.aspxhome.com/file/2023/2/55202_0s.gif)
word2010如何删除空白页
word中无法打印图形怎么办 打印图形不显示的设置方法
Win10找不到恢复环境的原因分析及解决教程(三种方法)
![](https://img.aspxhome.com/file/2023/4/46444_0s.png)
Win10 20H2怎么升级21H1 怎么升级win10系统版本到21H1
![](https://img.aspxhome.com/file/2023/1/50971_0s.jpg)
怎样去除WORD文档的格式?
![](https://img.aspxhome.com/file/2023/0/34390_0s.gif)
Office2003 个性设置不受重装影响
wps文字中怎样设置纸张
![](https://img.aspxhome.com/file/2023/5/53645_0s.jpg)
word拼音加声调怎么打
![](https://img.aspxhome.com/file/2023/4/18914_0s.jpg)
word中插入表格的方法
word文档中段落标记或回车标记怎么消除呢?
![](https://img.aspxhome.com/file/2023/6/23476_0s.png)
WORD中的页眉两条线怎么设置上粗下细?
![](https://img.aspxhome.com/file/2023/5/28945_0s.jpg)