间接和Vlookup引用错误

时间:2017-02-21 18:23:52

标签: excel vlookup excel-indirect

我用以下代码构建了以下路径:

'I:\Capital Markets\Post Closing\Audit\Team Reports\Audit Time\2017\February\[feb12017.xlsm]TimeInOffice'!A:C

使用此代码

=("'I:\Capital Markets\Post Closing\Audit\Team Reports\Audit Time\" & TEXT(Sheet2!$B$2,"yyyy") & "\" & TEXT(Sheet2!$B$2,"mmmmmmmmmmmmmmmmm") & "\" & "[" & AuditorCalcSheet!$CB4 & ".xlsm]TimeInOffice'!A:C")

AuditorCalcSheet!$ CB4引用此数据透视表,该表标识唯一日期并提供vlookup的文件名信息。 $ B $ 2 =包含年份和月份的插入数据中的单元格 答:C是我们正在查找的表格范围

Pivot Table

它成功构建了代码,但是当我尝试将其插入到vlookup函数中时:

=VLOOKUP(A2,INDIRECT("D1"),2,FALSE)

A2 =一个名字 D1 =构造的文件路径

该公式只给出了#N / A错误或参考错误,我尝试了我能想到的每一个变化,我似乎在解答答案。如果间接不起作用,还有其他方法将文本从另一个单元格传递到公式吗?

1 个答案:

答案 0 :(得分:1)

这不可能。 INDIRECT function不适用于已关闭外部参考。您需要更改Excel查看文本字符串中的路径,工作表和列到实际单元格地址的方式,以便在VLOOKUP function table_array 参数中使用。

如果将工作簿打开到相同的应用程序空间,则该公式将作为其中之一运行。

=VLOOKUP(A6,INDIRECT(D1),2,FALSE)
=VLOOKUP(A4, INDIRECT(TEXT(D1, "@")), 2, FALSE)
=VLOOKUP(A3, INDIRECT(INDEX(D1, 1, 1)), 2, FALSE)

¹您显示的路径不正确。因为Excel使用前置标记(例如单引号或')来强制文本,所以需要以两个刻度(例如''I:\Capital Markets\Post Closing\Audit\Team Reports\Audit Time\2017\February\[feb12017.xlsm]TimeInOffice'!A:C)开始字符串,以便从一个刻度开始检索相同的字符串。