Windows Update 適用後、Excel(VBA)から Access(MDB)への ODBC 接続が突然失敗する事象が発生した。
Microsoft Update による Jet / ACE Engine のセキュリティ仕様変更。
Microsoft公式KB KB5002984 により、 Jet / ACE Engine はセキュリティ強化の一環として、 ネットワーク上(UNC)の Access データベースに対するクエリ実行を既定でブロックする仕様に変更された。
これは不具合ではなく、仕様変更である。
公式KB:
KB5002984: Jet Red Database Engine と Access Connectivity Engine を構成してリモート データベースへのアクセスをブロックする
Microsoft公式KBに記載されている ACE 側の回避策(互換性維持設定) を適用。
(Microsoft 365 / Click-to-Run 環境)
環境によって変わる場合有→公式KB参照
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engines
追加する値
| 項目 | 内容 |
|---|---|
| 種別 | DWORD |
| 名前 | AllowQueryRemoteTables |
| 値 | 1 |
この設定により、UNC 上の Access データベースに対するクエリ実行が許可され、 既存の VBA / SQL / DSN を変更することなく復旧した。
Windows Update 後に発生した Excel+Access(ODBC)接続障害は、 Jet / ACE Engine のセキュリティ仕様変更が原因だった。
Microsoft公式KBに基づく設定を適用することで、 正規の方法で復旧が可能である。
「Windows Update 後に Access が動かなくなった」
「Excel からの ODBC 接続が不安定」
といった内容でも構いません。
まずはお気軽にご相談ください。
はい、あります。
納品後、1年間を保証期間とし、この期間の弊社原因の不具合は無料で修正いたします。
また、不具合以外の、操作や使用に関する問い合わせにも丁寧に応じます。
はい、どなたが作成したAccessでも改修いたします。
まずはご使用のAccessを解析させていただき、機能をよく把握した上で、ご希望の修正、機能追加を行います。
はい、できます。ボタンの位置を変更することやフォントサイズを変更することで、見やすくなり、より使い易くすることが可能です。
はい、可能です。
既存のAccessシステムについて、設計書がない場合でも内容を解析したうえで、保守契約を締結することができます。現在の構成や機能を把握し、適切なサポート体制をご提案いたします。
mdb形式のままでも動作させることは可能ですが、マイクロソフトとしてはすでに、2003以前のAccessはサポート対象外としています。
accdb形式では新しい機能が追加されておりますので、機能強化等を行う際に、開発がしやすいといった利点があります。
今後もAccessを使い続けていくのであればaccdb形式にバージョンアップしたうえで、機能追加などの修正を行ったほうが、より長い期間使い続けていけるかと思います。