【发布时间】:2025-11-24 01:05:02
【问题描述】:
我有一个宏可以打开另一个只读工作簿。为了避免只读警报,我将 Application.DisplayAlerts 属性切换为 False,如下所示
Sub tmp()
Application.DisplayAlerts = False
Debug.Print Application.DisplayAlerts
Workbooks.Open "\\Co-file01\FileName.xlsx"
End Sub
它工作正常,但如果我从另一个宏调用它,像这样
Sub tmp1()
Application.Run "tmp"
End Sub
我仍然收到警报,代码停止工作,等待响应。线
Debug.Print Application.DisplayAlerts
返回 False,所以看起来属性确实被切换了,但由于某种原因它不适用。
谁能解释它以这种方式工作的原因并提出任何解决方法?
如果重要,我正在使用 Excel 2016 64 位、Windows 7
【问题讨论】:
-
你应该直接通过它的名字来调用宏:只需在新的一行输入 tmp1,而不是使用 application.run
-
哇,它有效!非常感谢!
标签: vba excel excel-2016