我使用Evaluate() function
在放入单元格之前测试错误值。在下面的示例中,这将返回Error 2023
,但是当我将字符串粘贴到单元格中时,它会正确读取而没有错误(将完全返回外部电子表格中引用的值)。示例如下:
Evaluate("='H:\@Projects\@Dev[BudgetTracking_ProjectName_MSTR_FK_2.xlsm]Budget Estimate (2)'!F44")
答案 0 :(得分:1)
错误2023是xlErrRef
#REF!
。评估功能无法直接从已关闭的工作簿中进行评估。打开H:\@Projects\@Dev\BudgetTracking_ProjectName_MSTR_FK_2.xlsm
和
Evaluate("='H:\@Projects\@Dev\[BudgetTracking_ProjectName_MSTR_FK_2.xlsm]Budget Estimate (2)'!F44")
会奏效。注意" \"在目录名称后面" @ Dev"。
但当然
Evaluate("='[BudgetTracking_ProjectName_MSTR_FK_2.xlsm]Budget Estimate (2)'!F44")
就足够了。
要从已关闭的工作簿中获取值,您必须使用Excel4Macro功能。请参阅:http://spreadsheetpage.com/index.php/tip/a_vba_function_to_get_a_value_from_a_closed_file/