微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当指向不存在的内部工作表的公式是有目的的时,如何防止 Excel“我们无法更新链接”对话框?

如何解决当指向不存在的内部工作表的公式是有目的的时,如何防止 Excel“我们无法更新链接”对话框?

我正在制作一个 Excel 2016 数据库。设计的一部分是大型合并数据工作表,它们引用每月数据表中的单元格。例如,合并数据表可能会引用:

='Datasheet Feb2017'!D3

尽管许多单元格引用更复杂:

=IF(ISREF('Datasheet Jun2017'!A1),IF(XLOOKUP($A4,'Datasheet Jun2017'!D4:N4,'Datasheet Jun2017'!D6:N6,NA()) = "",NA(),XLOOKUP($A4,NA())),NA())

这些参考按预期工作。当数据表存在时,它会显示相应的数据。当数据表不存在时,它显示#N/A。我这样做是为了当我添加更多月份的数据时,合并的数据工作表会自动更新。对尚未创建的工作簿的有限数量的这些引用是通过 INDIRECT 构造的。

唯一的问题是,在打开工作簿时,我总是会收到此消息:

此工作簿包含指向一个或多个可能不安全的外部来源的链接。 如果您信任这些链接,请更新它们以获取最新数据。否则,您可以继续使用您拥有的数据。

这很奇怪,因为没有外部链接。所有参考都是内部的。当我选择更新时:

我们现在无法更新您工作簿中的某些链接。您可以继续而不更新它们的值,或者编辑您认为错误链接

我怀疑这是指对尚未创建的工作表的引用。

这是一个启用宏的工作簿。

如何在启动时阻止这两个对话框?

解决方法

我从用户 zerala 找到了一个 adjacent question 的解决方案,该解决方案似乎有效:

我把它放在我的启动宏中:

ThisWorkbook.UpdateLinks = xlUpdateLinksNever 
Application.DisplayAlerts = False

'你的宏

ThisWorkbook.UpdateLinks = xlUpdateLinksAlways
Application.DisplayAlerts = True

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。