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

禁用ActiveX保存的Excel 2003电子表格将不再弹出ActiveX提示,excel,activex,excel-2003,vba,Excel,Activex,Excel 2003,Vba,我有一个使用ActiveX的电子表格。我意识到,如果用户在第一次提示输入ActiveX时选择了No,然后保存工作表,工作表将不会提示用户再次启用ActiveX 但是,我正在开发的工作表要求启用ActiveX。所以我的问题是: 如果用户在提示启用ActiveX时第一次选择了“否”,则会保存工作表。如何在下次重新打开工作表时仍提示输入ActiveX?换句话说,如何始终提示用户启用ActiveX?如果未启用ActiveX,我的工作表中有一个登录宏将抛出错误。因此,如果未启用ActiveX,我将隔离并捕

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

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


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

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

代码:


如果启用了宏,则可以在工作簿打开事件中打开消息框。然后,如果单击“确定”,则使用“发送”键打开excel选项。但是,这仍然需要用户知道要启用什么。我认为您唯一的选择是在文件中添加免责声明,声明必须启用ActiveX控件,工作簿才能正常工作。然后放一个小图表,告诉他们如果他们不知道该怎么做。你能强迫用户在警告中说,如果他们不接受安装ActiveX,该工作表将无法工作吗。当他们说不时,你合上床单。炸弹!没有人喜欢这样令人毛骨悚然。所以他们会安装:)Whee.你能发布你如何隔离错误的代码吗?我将来可能想用这个
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