2014年11月12日以降にExcel 2016が強制終了するのを直した話 (original) (raw)
2024年11月12日にWindows UpdateでKB5002653が配布され、それ以降、Excel 2016のアドインが下図のようなメッセージがでるようになりました。
それだけならよかったのですが、なんと一部の環境ではOKを押した後にExcel 2016が強制終了するようになってしまいました。
また、上図のエラーがでずに強制終了することもあります。
これらの対処法及び、不具合が発生する条件についてここで述べます。
0.目次
1.不具合が発生する原因
2.不具合が発生する条件
3.不具合の対処法(強制終了しない場合)
4.不具合の対処法1(強制終了する場合・レジストリを変更する場合)
5.不具合の対処法2(強制終了する場合・レジストリを変更しない場合)
1.不具合が発生する原因
アドインのファイル名の先頭が1文字削れて読み込まれてしまうため、ファイルが存在しないと誤認するため。
2.不具合が発生する条件
・2024年11月12日以降(KB5002653適用後)
・Excel 2016
・アドインファイルの先頭が半角英数字である(エラーがでる条件)
・アドインファイルの先頭が全角文字である(強制終了する条件)
以上です。
不具合が発生する条件のアドインについてですが、
ファイル→オプション→アドイン→「設定」でアドインの一覧をだして
チェックボックスがついているものが対象です。
下図の例だと、先頭が半角英数字のアドインが2つ、先頭が全角のアドインが1つついていることになるので、2回(あるいはそれ以下)エラーが発生して、そのあとに強制終了することになります。
(※ただしソルバーや分析ツールは正確にはファイル名が半角英数字なのでエラーはでますが強制終了はしません)
エラーメッセージのみ出る人と
エラーメッセージでOKを押した後に強制終了する人と、
何も表示されずに強制終了する人で微妙にパターンが異なるのは
有効になっているアドインファイルが
半角英数字のみのアドインファイルなのでエラーがでるだけのパターンと
半角英数字のアドインファイルを読み込んだあと、全角のアドインファイルを読み込んで落ちるパターンと、
最初に先頭が全角のアドインファイルを読み込んで落ちるパターンがあるためです。
3.不具合の対処法(強制終了しない場合)
まずは強制終了しない人(先頭が半角英数字のもののみチェックがついているパターン)の対処法を書きます。
(強制終了する人は次の項目を参照してください)
アドインファイルの参照を選択します
チェックがついていて、かつ、半角英数字で始まるファイルをコピーします。
ファイル名を先頭の一文字削った名前にします。
(コピーしたときに勝手に後ろに追加される「 -コピー」の文字も削ってください)
これで画面を全て閉じ、Excelを起動しなおしてエラーが出なければ大丈夫です。
ただし、参照を押したときに開くアドインフォルダ以外にあるアドインについてはこの方法は使えません。アドインフォルダ以外のアドインは下図のようにフルパスで保存されているため、「C:\」で始まる場合は先頭に「C」が削れて「:\」になってしまうからです。
そのような場合は、一度チェックをはずしてOKを押した後、再度アドインの選択画面を開いてチェックをいれてOKを押してください。
Excelを終了するまでは使用することができます。(Excelを終了すると再度エラーがでて使えなくなるので、チェックを外してOKをおし、再度アドイン画面でチェックを入れなおしてください)
4.不具合の対処法1(強制終了する場合・レジストリを変更する場合)
次に、強制終了する人(先頭が全角のアドインファイルを有効にしている人)の対処法を書きます。
方法は2通りあって、レジストリを変更する方法と、
なんとか強制終了しないで起動するまで、起動し続ける方法です。
レジストリを変更する方が確実で楽なのですが、
レジストリの変更の仕方を間違えると最悪パソコンが起動しなくなる恐れがあるので、必ず自己責任でお願いします。
あとUWP版Excelにはこの方法は使えません。
(UWP版Excelでレジストリを変更する方法はありますが、更に難易度が上がり、パソコンを壊す可能性があがるので、ここには書きません。知りたい人はコメントしてください)
スタートメニューで「regedit」と検索してレジストリエディターを起動します。
「HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Excel\Options」
上記、キー(フォルダ)に移動します。
(今回はExcel 2016でしか発生しない不具合のようなのでバージョンによる違いは割愛します)
右側のペインでOPENやOPENx(xは数値)をさがし、先頭が全角文字になっているものを探します。
(上図の例だと、「一括Google翻訳.xlam」)
データの先頭が全角文字になっているOPENあるいはOPENxをダブルクリックして
先頭に半角英数字を2文字追加します。(ダブルクォーテンションマーク「”」の内側に追加してください)
以下のようになっていれば問題ありません。
起動時に以下のようなエラーがでます。OKを押してもExcelが強制終了しなくなります。
後は、強制終了しない場合の対処法と同様にアドインの設定画面を出して「参照」を選択します。
先頭が全角のファイルをコピーします
先頭が半角英数字については、先ほどと同様に先頭に一文字削ったファイルを用意するだけですが、
先頭が全角文字の場合は、以下のように、aa先頭にアルファベット2文字を追加したものと、1文字だけ追加したものを2つ用意します。
(先頭が全角文字のものアドインファイルは危険なのでなるべく残さないようにしましょう)
これで画面を全て閉じて、Excelを起動しなおしてエラーがでないで正常に起動できれば対処法終わりです。
5.不具合の対処法2(強制終了する場合・レジストリを変更しない場合)
Excelをすべて閉じている状態でCtrlを押しながらExcelを起動すると、
Excelをセーフモードで起動できます。
(Ctrlおしっぱで起動すると最背面に表示されてしまうので、色々画面に表示している状態で起動するとわかりづらいかもしれません。タスクバーをみるとわかりやすいです)
このセーフモードでアドインのチェックを外せばいいかと思うかもしれませんが、実はセーフモードで起動してもアドインの変更は反映されません。(一体なぜ!?)
ですが、セーフモードと通常起動を交互にやるとたまに通常起動の方で起動できるときがあります。(これも理由不明)
以下動画を参考にしてください。
ブログ説明用の動画
Excel 2016が強制終了する不具合でCtrl押しながら起動するセーフモードでの起動と通常モードでの起動を交互に行うとたまになぜか通常で起動できる時がある。
(セーフモードで起動できてもアドインの修正はできないので、レジストリを編集するか、通常モードで起動する必要がある) https://t.co/2UUat6HlE9 pic.twitter.com/EqX0JxvfUV— いおり (@iori016) 2024年11月18日
動画では最初は通常起動を何回か試していますが、強制終了してしまっています。
途中でセーフモードで起動したあと、通常モードを起動して1回目は失敗してますが、2回目で、下図のように全角文字のアドインファイルの先頭が一文字切れた状態のエラーがでます。
これがでれば成功したようなものです。
(あやまってExcelを終了しないように注意してください。終了してしまうとまた起動できるまで何度も試すハメになります。)
起動できた後は、アドインの画面を出して全部チェックを外してください。
これでOKを押せばとりえず強制終了しなくなります。
ただ、成功率は低いです。
確実性を求めるのであればやはり、レジストリを変更する方がらくです。