INDIRECT函数错误
问题描述:
我有以下公式,它已经很长时间返回#REF!
错误,无论我如何重新设计它。 C1上的值是具有对所引用的单元中的数据标签的名称:INDIRECT函数错误
Aug 2012
式的这一部分返回正确的数值:
=INDIRECT("'" & C1 & "'" & "!A502'")
但这个公式给出了错误:
=SUM(INDIRECT("'" & C1 & "'" & "!A502:'" & C1 & "'" & "!A503"))
对我在哪里犯错误的任何帮助吗?
答
你有正确的公式将有:
=SUM(INDIRECT("'"&C1&"'!A502:A503"))
我测试了这一点,并证实了它的工作原理,当C1说“表2”,我有一个名为“表2”的另一页。
两件事情我已经改变了:
首先 - 你引用它,这样它会重复表名称为范围(A502)中列出的第一个单元格,以及为第二单元(A503)。但是,如果您在Excel公式中手动选择A502:A503,则可以看到其格式为:'Sheet Name'!A502:A503。
我也简化了公式,所以“'”与“!”在同一个字符串中。然而,如果没有这种改变,它就会奏效。
动态创建像这样的公式(使用INDIRECT或VBA)的关键是确保您实际返回到Excel并尝试手动输入它--Excel将其视为可接受的公式?另外 - 如果您想查看公式为什么不起作用,请转至公式功能区,然后单击“评估公式”。这可以让你逐步浏览公式,因为它简化了。如果你这样做,它会告诉你最终的参考是由你的公式创建的,你可以将它与你自己手动创建的版本进行比较。
这很完美!谢谢你的回答和冗长的解释!欣赏你的时间。 – Dingo