在我的工作簿中我使用这个公式:
=INDEX('G:\Manufacturing\WH\EXPORTS\Scanning_Reports [ScanningReport.xls]Sheet1'!$D$1:$D$65536;AB3)
它工作正常,但是当我尝试对数据进行排序时出现#ref!
错误,我该如何避免它?
这是 AB3 中的公式
=MATCH(K3;'G:\Manufacturing\WH\EXPORTS\Scanning_Reports\[ScanningReport.xls]Sheet1'!$I$1:$I$65536;0)
当我对某些内容进行排序或删除时,会出现 #na 错误,不知道为什么!!只需拖动代码,错误就会消失。
我相信这是问题所在,但我不知道如何解决它
Excel displays this error to prompt you to correct the formulas yourself so that you don't get unexpected results
Excel 自动更正公式,但它会给出 #ref 来通知我更改。更改没问题。
我发现这个问题的原因很奇怪,如果 ScanningReport.xls 打开了,那么一切都很好,只有当 ScanningReport.xls 关闭时才会出现问题,如果你有解决办法,请告诉我
我使用 Excel 2010
答案1
我直到现在才知道这一点,但根据转至 OzGrid 上的此页面,Excel INDEX 函数需要打开外部工作簿才能正常工作。
此页面有参考可以安装到 Excel 2010 的插件将为您提供 INDEX.EXT 函数,该函数可以与关闭的工作簿一起使用。记下作者 Ashish Mathur 在那里对使用此插件的性能的评价。
答案2
尝试使用整列引用,而不是处理从第一行到最后一行的范围。
=MATCH(K3;'G:\Manufacturing\WH\EXPORTS\Scanning_Reports\[ScanningReport.xls]Sheet1'!$I:$I;0)
Index 函数也一样。插入和删除行时它会更加健壮。
您真的要使用 65 K 行数据吗?您可能需要考虑动态范围,将查找范围限制为仅使用的行。