Office365版Accessおよび、Access2019での『クエリ’’は破損しています』を回避する方法
先日からKB4484113(Access2016)、KB4484119(Access2013)、KB4484127(Access2010)での『クエリ’’は破損しています』というエラーメッセージにないする対処方法として、当該アップデートをアンインストールし、更新がかからないよう更新を停止するという事を書いていましたが、Offce365のAccessやAccess2019においての対処方法がわからず、システムの復元によってWindows Update適用前に戻し、更新を停止する方法をとっていました。
ようやく、回避方法が分かったので備忘録として書いておきたいと思います。
まず、Office365やOffice2019は、C2R(Click to Run)形式という従来のMSI(インストーラ)形式とは異なり、インターネット上から自動的に最新のモジュールがダウンロードされて実行される形式になっています。
つまり、従来のMSI形式と異なり、Windows Updateによるセキュリティ更新プログラムの配信というものはなくなっています。
では、どうやって更新プログラムのアンインストールを行えばよいのか?というと、ビルド番号を指定して、更新適用以前のバージョンに戻すという作業を行うことになります(以降、ロールバックと表記します。)
まずは、Accessを開き、現在インストールされているAccessのビルド番号を[ファイル]→[アカウント]と開いてゆき、確認します。
今回配信された最新のビルド番号は”12130.20344”ですね。
次に、これまで配信された更新の履歴をマイクロソフトのサイトで確認します。
この様に更新履歴が一覧で表示されますので、ロールバックするビルド番号をこの中から選択します。
この一覧でもわかるように"12130.20344"は11月12日(日本時間では11月13日)に配信された最新ビルドであることがわかります。
では、実際のロールバックの作業ですが、コマンドプロンプトを管理者モードで開き、
cd C:\Program files\Common Files\microsoft shared\ClickToRun
と入力し、ロールバックを実行するプログラムが格納されているフォルダーに移動後、
officec2rclient.exe /update user updatetoversion=《目的のビルド番号》
と入力し、Enterキーを押下すると以下のような画面が表示され、ロールバック(更新)が開始されます。
更新が終了し、再びAccessを開くと、指定したビルド番号に変わっていることが確認できます。
次回実行時に再び最新のビルド番号の物がダウンロードされないように、自動更新を停止することも忘れずに・・・。
今回の不具合に対する、Microsoftの対応については、Office365、Office2019については2019年11月24日頃、その他のOffice製品については次回のWindows Updateの適用日前の2019年12月8日頃だそうです。
とにかく、このまま不具合が続けばAccessで開発されたアプリケーションが動かず、利用しているお客様の業務に支障が出るので早めの対応をしてほしいものだと思いますね。
【追記】
2019年11月18日付(現地時間)最終アップデートでこの障害については対策が行われているようです。
詳しくは、もう収束したものと思っていましたが・・・をご覧ください。
【追記2】
2019年12月3日付(現地時間)にリリースされたビルド番号12228.20332で、また新たなバグが発生しているようです。
発生する現象の詳細は、またしてもOffice更新プログラムが悪さしているようです。で確認してください。
障害が発生した場合は、11月18日付12130.20390または11月22日付12130.20410へロールバックすることをお勧めします。
ようやく、回避方法が分かったので備忘録として書いておきたいと思います。
まず、Office365やOffice2019は、C2R(Click to Run)形式という従来のMSI(インストーラ)形式とは異なり、インターネット上から自動的に最新のモジュールがダウンロードされて実行される形式になっています。
つまり、従来のMSI形式と異なり、Windows Updateによるセキュリティ更新プログラムの配信というものはなくなっています。
では、どうやって更新プログラムのアンインストールを行えばよいのか?というと、ビルド番号を指定して、更新適用以前のバージョンに戻すという作業を行うことになります(以降、ロールバックと表記します。)
まずは、Accessを開き、現在インストールされているAccessのビルド番号を[ファイル]→[アカウント]と開いてゆき、確認します。
今回配信された最新のビルド番号は”12130.20344”ですね。
次に、これまで配信された更新の履歴をマイクロソフトのサイトで確認します。
この様に更新履歴が一覧で表示されますので、ロールバックするビルド番号をこの中から選択します。
この一覧でもわかるように"12130.20344"は11月12日(日本時間では11月13日)に配信された最新ビルドであることがわかります。
では、実際のロールバックの作業ですが、コマンドプロンプトを管理者モードで開き、
cd C:\Program files\Common Files\microsoft shared\ClickToRun
と入力し、ロールバックを実行するプログラムが格納されているフォルダーに移動後、
officec2rclient.exe /update user updatetoversion=《目的のビルド番号》
と入力し、Enterキーを押下すると以下のような画面が表示され、ロールバック(更新)が開始されます。
更新が終了し、再びAccessを開くと、指定したビルド番号に変わっていることが確認できます。
次回実行時に再び最新のビルド番号の物がダウンロードされないように、自動更新を停止することも忘れずに・・・。
今回の不具合に対する、Microsoftの対応については、Office365、Office2019については2019年11月24日頃、その他のOffice製品については次回のWindows Updateの適用日前の2019年12月8日頃だそうです。
とにかく、このまま不具合が続けばAccessで開発されたアプリケーションが動かず、利用しているお客様の業務に支障が出るので早めの対応をしてほしいものだと思いますね。
【追記】
2019年11月18日付(現地時間)最終アップデートでこの障害については対策が行われているようです。
詳しくは、もう収束したものと思っていましたが・・・をご覧ください。
【追記2】
2019年12月3日付(現地時間)にリリースされたビルド番号12228.20332で、また新たなバグが発生しているようです。
発生する現象の詳細は、またしてもOffice更新プログラムが悪さしているようです。で確認してください。
障害が発生した場合は、11月18日付12130.20390または11月22日付12130.20410へロールバックすることをお勧めします。
この記事へのコメント
ありがとうございます!
コマンドプロンプトの部分の説明で"officec2rclient.exe"が"offcec2rclient.exe"となっていましたので、修正お願いいたします。
愛のないことをしてしまいました~。
ご指摘ありがとうございます。
ありがとうございました。
私の場合、ビルド番号入力の際に16.0.《ビルド番号》(例16.0.12026.20320)と入力しました。
お役に立てて何よりです。
それにしても、Windows Updateに伴うOffice関連のトラブルが多いですね。
毎月ヒヤヒヤしていますが、今回のAccessの障害は特に業務アプリとして利用している人も多いため緊急度が高い障害でした。
大変助かりました。
休み明けに急にこういう問題が起きて仕事が止まってしまっていました。
ありがとうございました!
追記でも書いていますが、実は最新のアップデートが11月18日にリリースされていて、[今すぐ更新]で手動更新すると正常に戻ったようです(^^;;