excel - 返回#REF 的嵌套间接() 函数

标签 excel excel-formula

我有两张数据,其中匹配的数据位于不匹配的行中。

在一张纸上,我有一个值列表。

另一方面,我有一个数字列表,与第一张纸上的行号相对应,其中包含我试图自动复制到第二张纸的匹配值。

这是我的代码:

=INDIRECT("'Combined ICME+ipShocks List'!"&(INDIRECT("A"&H3)))

因此它应该指向名为“Combined ICME+ipShocks List”的工作表上 A 列中的单元格,其行由当前工作表上的单元格 H3 确定。

用一个简单的单元格(例如 H3)替换我为第二个 Indirect() 编写的内容是可行的,所以我怀疑它与我编写的第二个 Indirect() 有关。

最佳答案

回答为什么会抛出错误的问题:

间接需要解析为单元格地址的文本值

在您的公式中,您嵌套了两个 Indirect() 函数。

内部间接将解析为单元格引用,如A1(作为引用,而不是文本)。然后,将该单元格引用与字符串连接起来,并将其提供给外部 Indirect()。这就是导致错误的原因。间接需要一个字符串。您向其提供一个与单元格引用连接的字符串,这不是任何函数都能理解的组合。

如果您只在字符串常量中包含列字母,则根本不需要内部间接。

=INDIRECT("'Combined ICME+ipShocks List'!A"&H3)

请注意,间接是不稳定的,只要任何单元格发生更改,就会导致工作簿重新计算。这会让你的工作簿变慢。应非常谨慎地使用间接方式。在这种情况下,可以使用 Index 来代替,正如 Jeeped 在对您的问题的评论中所建议的那样。

=INDEX('Combined ICME+ipShocks List'!A:A,H3)

由于您知道工作表名称和列,因此只有行号是变量。在这种情况下,间接是多余的。仅当您需要使用公式构造工作表名称时才使用间接。

关于excel - 返回#REF 的嵌套间接() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42331215/

相关文章:

sql - 在值不为空的地方插入

vba - Excel DDE RTD 自动刷新

excel - 如何突出显示指定范围内的日期?

excel - 如果数字不在另一列中,则对一列求和

excel - 检查 Excel 单元格是否存在于列中的另一个工作表上 - 并返回不同列的内容

vba - 在两个工作表中都有共同的列但行号不同

vba - 使用 VBA 将 Excel xlsm 文件上传到 php 脚本

vba - 使用宏记录器记录长 Excel 公式时出现问题

excel - 使用 Excel 中单元格中的参数运行 Web 查询

excel - 创建 Excel 层次结构