打开Excel电子表格时关闭更新链接的消息
打开Excel电子表格时关闭更新链接的消息
我有一个工作簿,我想打开它时不要询问是否更新链接(确切的消息是:
"该工作簿包含对其他数据源的链接。如果您更新链接,Excel将尝试检索最新数据。如果您不更新链接,Excel将使用先前的信息。请注意,数据链接可以用于访问和共享机密信息而无需您的许可,并可能执行其他有害行为。如果您不信任此工作簿的来源,请勿更新链接。")
我想做的是通过在Internet Explorer中点击文件来打开工作簿,并且链接会更新,但不要求用户点击按钮来更新。
我尝试在工作簿的打开事件中使用以下代码,但没有成功:
Private Sub Workbook_Open() Application.DisplayAlerts = False Application.ScreenUpdating = False End Sub
我还尝试在上述子程序中使用以下代码行:
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.FullName, Type:=xlExcelLinks Application.ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.FullName, Type:=xlExcelLinks Application.ActiveWorkbook.UpdateLink Workbooks.Open ActiveWorkbook, UpdateLinks:=True ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources, Type:=xlExcelLinks
使用的是MS Excel 2010版本,并保存为.xls文件以适应旧版本。
非常感谢您的帮助。提前感谢您的所有帮助。
敬上,
Robert
问题的出现原因是在Excel电子表格打开时,会弹出一个更新链接的消息框,询问是否更新链接。这可能会干扰用户的操作,因此需要关闭这个消息框。
解决方法是在Excel的VBA编辑器中编写一个名为Workbook_Open的子程序,通过设置Application对象的DisplayAlerts和AskToUpdateLinks属性来关闭消息框。具体代码如下:
Sub Workbook_Open() Application.DisplayAlerts = False Application.AskToUpdateLinks = False Application.DisplayAlerts = True End Sub
这段代码的关键点是:
1)将子程序命名为Workbook_Open,而不是Workbook_Activate。因为在测试过程中发现,使用Activate子程序无法完全关闭更新链接的请求。
2)使用DisplayAlerts属性来关闭第二个关于链接未更新的警告。即使关闭了第一个更新链接的请求,仍然会出现第二个警告。
需要注意的是,将这段代码放置在ThisWorkbook对象中才能生效。这样每次打开Excel电子表格时,都会自动运行这个子程序,从而关闭更新链接的消息框。
问题的原因:
在使用Microsoft Office 2013时,打开Excel电子表格时会出现“Turn Off Msg for Update Links”错误消息。这个问题的原因是Excel电子表格中存在链接,并且设置为在打开时更新链接。
解决方法:
要解决此问题,可以使用以下代码在Excel电子表格打开时禁用链接更新的消息提示。
代码如下:
Private Sub Workbook_Open() ThisWorkbook.UpdateLinks = xlUpdateLinksNever End Sub
将以上代码添加到Excel电子表格的VBA代码中,确保将其保存为.xlm文件格式。这样,在打开Excel电子表格时,就不再会出现“Turn Off Msg for Update Links”错误消息。