使用ActiveX保存的Excel 2003电子表格将不再弹出ActiveX提示

时间:2012-11-20 16:51:48

标签: excel-vba activex excel-2003 vba excel

我有一个使用ActiveX的电子表格。我意识到,如果用户在第一次提示输入ActiveX时选择,然后保存工作表,则工作表将永远不会提示用户再次启用ActiveX。

但是,我正在开发的工作表需要启用ActiveX。所以我的问题是:

如果用户在提示启用ActiveX 时第一次选择,则会保存工作表。如何在下次重新打开工作表时仍然提示ActiveX?换句话说,如何始终提示用户启用ActiveX?

1 个答案:

答案 0 :(得分:0)

我的工作表中有一个登录宏,如果未启用ActiveX,则会引发错误。因此,如果未启用ActiveX,我会隔离并捕获该错误并强制保存并关闭工作表。

代码:

Private Sub Workbook_Open()
  ' ...some code...
  On Error GoTo InitializeLoginErrorHandler:
    DoLogin

  Exit Sub

  InitializeLoginErrorHandler:
    MsgBox "ActiveX has not been enabled. ActiveX must be enabled for worksheet to function. Restart worksheet and enable ActiveX." _
      & vbNewLine & vbNewLine & "worksheet will now close without saving any changes."
    ThisWorkbook.Close savechanges:=False
End Sub

Private Sub DoLog()
  ' Login to system through linked .dlls and .ocx. This portion requires ActiveX to be enabled. 
End sub
相关问题