AskToUpdateLinks=False和UpdateLinks:=0的区别

23 浏览
0 Comments

AskToUpdateLinks=False和UpdateLinks:=0的区别

我遇到了在运行Excel宏的时候弹出的对话框问题。我试图摆脱这个问题:\"https://drive.google.com/open?id=0BzzXkoIWuMAHOF9oV1o5dmFhcWc\"

我不断尝试,最后找到了一个解决方案,使得对话框不会周期性地弹出,因此我不需要每次都按取消按钮。

以前,代码的一部分是这样的:

 Application.AskToUpdateLinks = False
 Application.DisplayAlerts = False
 Workbooks.Open Filename:=FullFileName

成功的代码是:

 Application.DisplayAlerts = False
 Workbooks.Open Filename:=FullFileName, UpdateLinks:=0

那么Application.DisplayAlerts = False和在工作簿对象的末尾添加updatelinks:=0有什么区别呢?

新编辑(2017年8月10日):

我再次运行宏时出现了错误!!!

我有

Application.Calculation = xlCalculationManual
Application.AskToUpdateLinks = False
Application.ScreenUpdating = False
Workbooks.Open FileName:=FullFileName, UpdateLinks:=0

宏抛出了一个错误

运行时错误\'9\':下标超出范围

我不知道为什么。

当我删除了Updatelinks:=0时,它成功运行,但又强制我点击取消,因为对话框弹出。

我知道哪里出了问题。目标文件名的变量没有原因地被放错了位置!

admin 更改状态以发布 2023年5月23日
0
0 Comments

如果Application.AskToUpdateLinks被设置为False,那么Excel会自动更新链接(或尝试更新但失败并显示错误消息)。\n如果UpdateLinks参数为0,则链接将不会被更新,甚至不尝试,并且不会问任何问题。(顺便说一句,如果您想要更新链接,必须将此参数设置为3,而不是1)。\n此外,第一个示例更改了应用程序对象的属性,而第二个是方法参数,因此如果在此之后打开另一个工作簿,第一个代码将对其产生影响,而第二个则不会。

0