如何引用其他工作表单元格,且单元格编号取自当前工作表单元格
Excel动态引用指定工作表单元格的解决方案
我明白你想要实现的是根据当前工作表的计算结果,动态引用另一张工作表的指定单元格,刚好你找到的INDIRECT函数就是解决这类问题的核心工具,我来帮你把逻辑理得更清晰:
基础需求实现
你的场景是:
- 当前工作表F2单元格用
=CONCATENATE("G", E2)生成了目标单元格地址(比如G69) - 想要引用
Sheet 3中对应地址的单元格,最终得到类似='Sheet3'!G69的效果
对应的公式可以写成:
=INDIRECT("'Sheet 3'!" & F2)
这里的&用来拼接字符串,把'Sheet 3'!这个工作表引用前缀,和F2生成的单元格地址连在一起,INDIRECT会自动把拼接后的文本解析成真实的单元格引用。
额外需求实现
如果你想直接把CONCATENATE("G",A1)的计算结果作为目标单元格地址,不用先写到F2里,也可以直接把计算逻辑整合到公式里:
=INDIRECT("'Sheet 3'!" & CONCATENATE("G",A1))
其实用&拼接比CONCATENATE更简洁,也能达到同样的效果:
=INDIRECT("'Sheet 3'!G" & A1)
补充说明
INDIRECT函数的核心作用就是将文本格式的单元格地址转换为可直接引用的单元格,非常适合这种需要动态生成引用地址的场景。你自己找到的=INDIRECT("'Sheet 2'!F2")也是这个逻辑的基础用法,只是针对不同的引用目标做了调整。
内容的提问来源于stack exchange,提问作者redbean1100010
相关产品推荐
相关产品推荐

