Excel:通过单元格值利用INDIRECT访问已定义表格的指定列
解决INDIRECT引用表格列求和的问题
你遇到的问题根源在于INDIRECT函数需要接收文本格式的完整引用地址,不能直接把它的返回值和[Duration]拼接使用。正确的做法是把表格名称和列名组合成符合结构化引用规则的文本字符串,再传给INDIRECT。
基础场景公式(同工作表内的表格)
=SUM(INDIRECT(A2 & "[[Duration]]"))*24
原理说明
A2是存储月份名称(即目标表格名)的单元格,比如值为JanuaryA2 & "[[Duration]]"会拼接成January[[Duration]],这是Excel表格列的标准结构化引用格式INDIRECT会将这个文本字符串解析为对目标表格Duration列的引用,再通过SUM求和,最后乘以24转换为小时数
跨工作表场景公式
如果目标表格在其他工作表中,需要补充工作表引用,公式调整为:
=SUM(INDIRECT("'" & A2 & "'!" & A2 & "[[Duration]]"))*24
内容的提问来源于stack exchange,提问作者tar
相关产品推荐
相关产品推荐

