跳过自动弹出“以只读方式打开?”

时间:2013-08-01 16:20:30

标签: vba excel-vba excel

我现在使用以下命令逐个打开一组工作簿:

Workbooks.Open Filename:=file, Password:="" 

通常文件notread-only模式下打开,这就是我想要的。但是对于某些文件,前一行弹出以下窗口:

enter image description here

在这种情况下,我仍然想要打开文件(cliking Yes),甚至认为这将是read-only。谁能告诉我如何通过命令VBA自动化这个选择,而不是点击?

3 个答案:

答案 0 :(得分:5)

Excel有许多“提醒”,您可以将Application.DisplayAlerts设置为False来关闭。

在打开工作簿之前将其设置为False,然后在打开工作簿后返回True,这样您就不会消除任何其他后续警报。

某些工作簿上出现了特定的 Open as only-only?警报,因为这些工作簿上次保存时选中了“只读推荐”复选框。在没有“只读建议”设置的情况下重新保存这些工作簿将停止提示为只读,但这可能不是您想要的。

但是,Workbooks.Open方法(MSDN)有一个ReadOnly参数,您可以指定:

Workbooks.Open Filename:=file, Password:="", ReadOnly:=False

这应该在写入启用模式下打开工作簿,即使它是以“只读推荐”设置保存 - 据我记得,指定此参数将跳过以只读方式打开? 提醒并使用您提供的设置...

答案 1 :(得分:2)

只想指出建议的答案不正确:

直接从MSDN关于ReadOnly标志:

https://msdn.microsoft.com/en-us/library/office/ff835182.aspx

  

True 以只读方式打开文档。 这个论点并没有覆盖   已保存文档的只读推荐设置。例如,如果   文档已保存,建议打开只读,   将ReadOnly参数设置为False将不会导致文件   以读/写方式打开。

答案 2 :(得分:1)

使用ReadOnly参数:

Workbooks.Open Filename:=file, Password:="", ReadOnly:=True

然后弹出消息。