当加载项的Auto_Open具有 MsgBox 时,Excel Mac 的启动行为会发生变化



我在OS X Yosemite(10.10.5)上使用Excel for Mac 2011(版本14.5.9)。如果我从Dock启动Excel,它会弹出"Excel工作簿库"对话框。如果我通过在Finder中双击现有工作簿来启动Excel,Excel会按预期打开工作簿。

但是,如果我安装一个名为"hello_world.xlam"的简单外接程序,这些行为就会改变。该外接程序只有一个标准VBA模块("Module1"),只有以下宏:

Sub Auto_Open()
    MsgBox "Hello World"
End Sub

无论Excel是如何启动的,都会显示消息框。然而,Excel似乎忘记了它默认的启动行为。如果从Dock启动Excel,则不会显示"Excel工作簿库"对话框。这是个小问题。更大的问题是,如果我通过在Finder中双击工作簿来启动Excel,Excel在关闭消息框后不会打开工作簿。

如果我禁用了此加载项(通过进入"工具"-->"加载项",然后取消选中该加载项),则会恢复通常的启动行为。

有什么解决办法吗?

使用事件过程发现了解决方案。从hello_world加载项中删除了Module1。将此过程添加到外接程序的ThisWorkbook代码模块中:

Private Sub Workbook_Open()
    MsgBox "Hello World"
End Sub

Excel启动时会出现消息框,并且其启动行为保持不变。

最新更新