1

ActiveXを使用するスプレッドシートがあります。ユーザーが最初にActiveXの入力を求められたときに[いいえ]を選択してからワークシートを保存すると、ワークシートはユーザーにActiveXを再度有効にするように要求することはありません。

ただし、私が開発しているワークシートでは、ActiveXを有効にする必要があります。だから私の質問は:

ユーザーがActiveXを有効にするように求められたときに初めて[いいえ]を選択し、ワークシート保存した場合。ワークシートを次に再度開いたときにActiveXの入力を求めるにはどうすればよいですか?つまり、ActiveXを有効にするようにユーザーに常にプロンプ​​トを表示するにはどうすればよいですか?

4

1 に答える 1

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
于 2012-11-28T17:46:04.580 に答える