ActiveX电子表格控件禁用了workbook_open事件

我已经将ActiveX电子表格控件插入到Excel VBA表单中。

我已经在ThisWorkbook.Workbook_Open()事件中编写了一个过程,并且在窗体上存在ActiveX电子表格控件时,将不会在打开工作簿时执行。

为了简化问题,我有:

  • 创build了一个新的工作簿。
  • 添加了一个空白表单“UserForm1”。
  • 添加一个ActiveX电子表格控件到“UserForm1”,“Spreadsheet1”。
  • 在ThisWorkbook中,添加Private Workbook_Open()事件:打开工作簿时不执行Workbook_Open事件。 从表单中删除电子表格控件时,workbook_open事件正常执行。

在这两种情况下都启用macros。 其他macros手动调用时成功执行。

如何让workbook_open事件在VBA表单上的ActiveX控件上执行?

Private Sub Workbook_Open() MsgBox "Workbook_Open event has executed." End Sub 

更新:当安全设置为“禁用带通知的所有macros”并且文件在受保护的视图中第一次打开时,Workbook_Open()事件被触发。 随后打开文件,事件不被解雇。