【问题标题】:INDIRECT inside INDEX function giving #REF errorINDEX 函数内部的 INDIRECT 给出 #REF 错误
【发布时间】:2013-12-30 18:46:18
【问题描述】:

我有一个 Excel 工作簿 Spreadsheet.xlsx,其中 B2=MATCH(B1,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$1:$A$500,0)B1 中获取字符串(名称)并将其与 Workbook.xlsx 中的一列行标题匹配,以给出行号。

目前B2返回值8,用于B3=INDEX('\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$8:$SD$8), MATCH($A4,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$2:$SD$2,0))

B3 索引一系列值 $A$8:$SD$8,对应于 Workbook.xlsxSheet1B2 中的行号/strong>,并返回与$A4 范围内的日期$A$2:$SD$2 匹配的值。

目前我手动输入行号到 B3 范围`$A$8:$SD$8.

如果我尝试使用 B3=INDEX(INDIRECT("'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet'!$A$"&B2&":$SD$"&B2), MATCH($A4,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$2:$SD$2,0)) 自动执行此操作,则会收到 #REF 错误。

我在其他地方使用过INDIRECT,例如=MAX(INDIRECT(K&"K1")) 它工作得很好。 另外,里面的Workbook.xlsxSheet1是肯定存在的,我可以不使用INDIRECT从它们那里获取数据。

为什么它不起作用?

【问题讨论】:

  • 嗯,我不完全确定是什么问题,但是如果在计算时Workbook.xlsx 是打开的,那么公式是否有效?如果它引用的文件被关闭,这是一个不起作用的功能,但是INDEXMATCH 也是如此,所以我只是想通过排除这一点来确认。另一件可能是错字的事情是,INDEX 的第一部分引用了一张名为“Sheet”的工作表,而您在其他任何地方都没有提及。
  • @Jerry 问题是我的公式可以单独正常工作,但是当我尝试使用INDIRECT 将结果从一个单元格传递到另一个单元格时,它不起作用。如果我将 B2 的值手动输入到 INDEX 引用的范围内,它可以正常工作;如果我使用INDIRECTB2 中的数字输入到B3,它不起作用。此外,是的,当 Workbook.xlsx 旁边打开时它确实有效,然后当它关闭时则无效。感谢您发现错字,已修复!

标签: excel ms-office excel-formula excel-2010 excel-indirect


【解决方案1】:

INDEXMATCH 函数,如此处使用的那样,可以使用已关闭的工作簿 - INDIRECT

...但是您在这里并不需要INDIRECT - 您可以使用此版本和B2 在第一个范围内定义行号

=INDEX('\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$1:$SD$500),B2, MATCH($A4,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$2:$SD$2,0))

即使源工作簿已关闭,这也应该有效,并且在任何情况下都是一种“更干净”、更强大的方法。

请注意,公式中的第一个范围已更改为与 B2 中的匹配范围一样长

如果你想完全去掉 B2,只需将 B2 中的 MATCH 函数放在 B2 的那个公式中代替,即

=INDEX('\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$1:$SD$500),MATCH(B1,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$1:$A$500,0), MATCH($A4,'\\SERVER\Path\To\File\[Workbook.xlsx]Sheet1'!$A$2:$SD$2,0))

[注意:正如 Jerry 所说,您的工作表名称不一致,因此我将第一个更改为 Sheet1 以匹配其他工作表]

【讨论】:

  • 非常感谢,这完全按照我的意愿工作,并削减了一整行无用的单元格!另外,感谢您发现错字,现在已修复。
猜你喜欢
  • 2022-10-13
  • 1970-01-01
  • 1970-01-01
  • 2015-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-23
  • 2014-11-12
相关资源
最近更新 更多