首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何抑制更新链接警告?

如何抑制更新链接警告?
EN

Stack Overflow用户
提问于 2013-02-16 16:15:18
回答 4查看 350.7K关注 0票数 119

我正在尝试编写一个可以打开许多Excel文件的脚本。我一直收到提示:

代码语言:javascript
复制
This workbook contains links to other data sources.

我希望不显示此消息,这样我的脚本就可以自动遍历所有工作簿,而不必为每个工作簿单击Don't Update。目前,我正在使用以下内容:

代码语言:javascript
复制
function getWorkbook(bkPath as string) as workbook

Application.EnableEvents=False
Application.DisplayAlerts=False
getWorkbook=Workbooks.Open(bkPath,updatelinks:=0,readonly:=false)

end function

但是,该消息仍在显示。我该如何抑制它呢?

编辑:这条消息似乎是针对具有断开链接的工作簿出现的;我没有看到This workbook contains one or more links that cannot be updated消息,因为我将DisplayAlerts设置为false。工作簿链接到Windows服务器上某个文件夹中的等效文件,因此当从该文件夹中删除匹配的文件时(这是我们业务流程的一部分),链接就会断开。有没有可能在链接断开时抑制警告?

另外,我正在使用Excel2010。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-02-17 02:43:47

我已经找到了一个临时的解决方案,至少可以让我处理这项工作。我写了一个简短的AutoIt脚本,等待“更新链接”窗口出现,然后单击“不更新”按钮。代码如下:

代码语言:javascript
复制
while 1
if winexists("Microsoft Excel","This workbook contains links to other data sources.") Then
   controlclick("Microsoft Excel","This workbook contains links to other data sources.",2)
EndIf
WEnd

到目前为止,这似乎是有效的。然而,我真的很想找到一个完全是VBA的解决方案,这样我就可以使它成为一个独立的应用程序。

票数 2
EN

Stack Overflow用户

发布于 2016-08-17 13:24:04

Excel 2016我在创建工作簿/文件时遇到了类似的问题,然后我更改了名称,但不知何故旧的工作簿名称被保留了下来。在谷歌了很多次之后...好吧,我没有找到任何最终的答案...

转到DATA ->编辑链接->启动提示符(在底部),然后选择最适合您的选项。

票数 8
EN

Stack Overflow用户

发布于 2013-05-17 08:06:58

当在Excel中手动打开我的工作簿(而不是通过VBA以编程方式打开它)时,我想抑制询问您是否希望更新指向另一个工作簿的链接的提示。我尝试在Auto_Open()宏中包含:Application.AskToUpdateLinks = False作为第一行,但不起作用。然而,我发现如果你把它放在ThisWorkbook模块的Workbook_Open()函数中,它就能出色地工作-对话框被抑制了,但更新仍然在后台静默地进行。

代码语言:javascript
复制
 Private Sub Workbook_Open()
    ' Suppress dialog & update automatically without asking
    Application.AskToUpdateLinks = False
End Sub
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14908372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档