はじめに
Microsoftは2024年9月6日(米国時間)、次期永続版Office製品である「Microsoft Office 2024」において、ActiveXコントロールを既定で無効にすることを発表しました。Microsoft 365 Appsサブスクリプション製品については、2025年4月から同様の変更を実施するとしています。
Accessは対象外
この変更の影響を受けるのは、以下のWin32アプリです。
- Word
- Excel
- PowerPoint
- Visio
Accessは対象外です。ここ重要!
疑問点
Excelにてデータベース操作として使用される ADODB(Microsoft ActiveX Data Objects . Library)も、ActiveX と呼ばれています。
さて、これはどうなるのでしょうか?
ActiveXコントロール(UI COM Object)
今回対象となるActiveXコントロールですが、あくまでExcelなどの画面上に貼り付けて操作等ができるものという認識で筆者が考えています。
つまり、UIを持つActiveX(UI COM Object)が、ActiveXコントロールです。
例えばExcelにバーコードを作成できる「Microsoft Barcode Control 16.0」などが代表です。
ActiveX(COM Object)
対象とならないActiveXとして、UIを持たないもの。
例えば、ADODB(Microsoft ActiveX Data Objects . Library)は、UIを持っていません。
但し、これはあくまで筆者の考えであり、Microsoftの公式見解ではありません。
Microsoft Copilot に質問しても、「ActiceX全般が対象なので ADODBも無効化の対象です。」といった回答が返ってきます。
一応 Reddit にて、下記のようなコメントがあるくらい。
これは ActiveX コントロールを指しており、COM オブジェクトのより広範な利用を指しているわけではないと思います。
そうですね、たとえば ADODB ライブラリを使用する VBA コードがこれによって壊れるとしたら最悪ですが、彼らがこれを壊そうとするとは思えません。
最後に
設定で有効化できるとしても、ADODB が無効化されてしまったら、かなり混乱を招くことになるでしょう。いくら Microsoft でもそこまではしないでしょう。
Microsoftの方で公式な見解を提示してくれるのが一番ありがたいです。
最近、下記ツールを作成しましたが、1いいねと全く反応がありません。ちと残念です。