カスタム検索
Office関連

「サブジェクトは指定された操作に対して信頼されていません」への対処方法(Office VBA)

Microsoft Updateの影響で、UserFormにコントロールを貼り付けようとしたときに「サブジェクトは指定された操作に対して信頼されていません。」といった警告が表示され、コントロールが使用できなくなることがあります。


そういったときは下記の処理を実行することで、コントロールが使用できるようになります。

 

1. レジストリエディタを起動します。
2. 下記レジストリキーにあるActiveXコントロールのCLSIDのCompatibility Flags(DWORD値)のデータを表示します。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{対象のCLSID}
3. 「Compatibility Flags」の値を「0」に変更します(変更前は400(16進)になっているはずです)。

以上で作業は終了です。
上記作業実行後はUserFormにコントロールを貼り付けることができるようになります。

 

※ ActiveXコントロールのCLSIDはレジストリエディタでコントロール名をキーワードに検索すれば、「HKEY_CLASSES_ROOT\CLSID」内でヒットしますので、そのヒットしたキー名がCLSIDになります(例えばWinsockコントロールの場合は{248DD890-BB45-11CF-9ABC-0080C7E7B78D}です)。
※ Visual Studioをお持ちの場合は、付属の「OLE/COM Object Viewer」を使うことでもCLSIDを調べることができます。