じゃばのひまつぶし:ExcelVBAによる競馬ソフト自作教室とJRA-VAN登録ソフト(おずたんシリーズ)のサポートサイトです。
タラレバ倶楽部ページ

<Excel VBAが突然使えなくなったら!?> 
VBA

(更新:2020-05-24)


 あなたのパソコンではこんな問題が起こりませんか?(結構多いようです)
最近続けざまにExcelマクロが突然使えなくなりました。昨日までは使えたのに・・・
今日(2020年5月2日)いつものように土曜日の朝、データを取ろうと競馬ソフトを開いたら、次のようなメッセージが・・・

「XXXXX」(ソフト)の一部の内容に問題が見つかりました。可能な限り内容を回復しますか?ブックの発行元が信頼できる場合は、「はい」をクリックしてください。
 
(1)「はい」をクリックしてはいけません。「回復」と親切めかした文言ですが、マクロ部分がバッサリ削除されたただのワークシートになります。「はい」の結果は、ログの画面を提示しますが、何も役に立ちません。
つまり、「はい」を選ぶともうこのソフトは使えません。バックアップがあればそこから復旧するしかありません。(ただ、保存しないで閉じたら、運よく残っているかも)
(マクロがなくてエクセルなんかただのワークシート。今はエクセル互換の無料のスプレッドシートがある)

(2)「いいえ」を選びましょう。たぶん何もせずに終了するか、延々と開こうとするので、右上の「X」で閉じましょう。
実は一週間前にも同じ問題に遭遇しました。この時はExcel2010の入ったPCでした。今回はOffice 365 solo(最近はMicrosoft 365 Personalと名称変更)のPCで遭遇。
同じ対策で行けるのかと思いましたが、ExcelのバージョンとPCへの搭載方法で対策が異なるようです。ご参考までに私が遭遇し、解決できた方法をご紹介します。ただし、実行はご自分のリスクで行ってください。

いずれもマイクロソフトからの更新プログラムが悪さの原因です。この更新プログラムを削除するか、更新前の状態に戻すことが解決策のようです。
Excel2010の場合(買取ソフトで自分でインストールのケース)・・・対策:更新プログラムを削除する
参考サイト
「ウインドウズの更新をしたら、マクロ付きエクセルファイルが開けなくなった」

[対策]
「コントロールパネル>プログラム>更新プログラム」で、[KB4484285]を探してアンインストールすれば復旧できます。

ただこの場合、また[KB4484285]が勝手にインストールされますので、自動更新しないようにする方がいいかもしれません。とりあえずはいったん上書き保存しておくと次回からは正常に開けると思います(更新プログラムが自動インストール後でも)。

私の場合は、更新プログラムがあっても開けるマクロ付きExcelがありましたが、たぶん更新される前のExcelはOKとみなし、更新後に追加したExcelファイルをはじくようです。
更新プログラムを削除して開いたマクロ付きファイルを上書き保存したら、以降は正常に開けました。しかし、また新しくマクロ付きファイルをインストールしようとしたら同じ問題になり、見ると削除した更新プログラムがインストールされていました。

Windows10の場合は、自動インストールになっており、再起動時に存在する更新プログラムを勝手にインストールするみたいです。
そのため、更新プログラムを削除する前に自動更新をやめてから削除する方がいいようです。
ただ、実際には別ソフトをインストールしないとWindows10だけでは自動更新を防げないので、一時的な回避になります。

[Windows10の自動更新をとりあえずやめる手順]
@スタート画面→「設定」(歯車マーク)→「更新とセキュリティ」をクリック。
A「詳細オプション」をクリック。
「更新プログラムのオプション」
[Windowsの更新時に他のMicrosoft製品の更新プログラムを受け取る]・・・オフ(オフのままだとOffice以外の更新プログラムも入らなくなるので目的の更新プログラムを削除したらオンに戻す方がいいでしょう)

「更新プログラムの通知」
[更新を完了するためにPCの再起動が必要な場合は、通知を表示します]・・・オン
これは削除した後で、再度更新プログラムがインストールされますが、その前に開いたファイルを上書き保存し忘れた場合の注意喚起です。上書き保存せずに再起動すると削除したはずの更新プログラムが再インストールされるので、また同じ問題になります(多分)。

上記の後で更新プログラム[KB4484285]をアンインストールします。
アンインストール後に、マクロ付きExcelが正常に開けば成功です。上書き保存をして(念のためバックアップも作る)、上記のWindows設定を元に戻します。再起動すると多分削除した更新プログラムがまたインストールされていると思いますが、Excelは開けると思います。

(追加)2020年5月16日にまた別の更新プログラムがインストールされてしまい、また新しくダウンロードしたブックのマクロが開けなくなりました。今回は下記の更新プログラムを削除したら行けるようです。
「Security Update for Microsoft Excel 2010(KB4484384) 32-bit Edition (2020/05/16)


(参考)削除した更新プログラムが再度インストールされないようにする別ソフト
"Show or hide updates" トラブルシューター

私は実際にやってませんので詳細はわかりません。
Office365(Excel2016)の場合(クイック形式でインストールのケース)・・・対策:3月の状態に戻す(ロールバック)
私はOffice365Solo(現在はMicrosoft365Personal)を別PCにインストールしていますが、これはMicrooftからダウンロードしたもので、これをクイック形式(Clic 2 RUNと同じ?)というようです。最初からPCにインストールされている場合は別の対策になりますが、下記のサイトに紹介されています。Officeソフトのインストール区分は後述を参考にしてください。

参考サイト
「4月の更新プログラムでマクロ付きエクセルファイルが読めなくなる不具合での復旧方法の紹介」

この中の[Excel2016/2019 & Excel365(Microsoft365)]のスレッドの手順で復旧できました。
[Excel2016/2019 & Excel365(Microsoft365)]「突然Excelのマクロファイルが読み込めなくなりました」

この中の「コマンドプロンプト」を実行することで、3月の状態に戻す(ロールバック)形で行けました。コマンドプロンプトの手順も図入りで説明されているので分かりやすい。
実行後はやはり図解されている方法でOffice更新を無効にしました。いずれ正式な解決プログラムが公開されると思いますが。
Excelは2010以降、いろいろなインストール方法があり、マクロの対策もそれぞれで異なるようです。
(対策)
Office365(Microsoft365)/2019/2016/2013はロールバック
Office2010は更新プログラムのアンインストール

自分のOffice(Excel)の見分け方→Officeソフトのインストール区分を参照ください。
こういう問題が結構多発しているようです。更新プログラムを公開する前にどんな検証をしているのかと疑問がわきます。コロナ問題で十分な検証ができないままに公開しているとしか思えません。
しっかりしろ、マイクロソフト!!!


ページトップへ
 Copyright(C):Jaba 2000-