VBA: 突然マクロが壊れて実行が中断する

就業時間を計算するExcelファイルが動作しなくなったと連絡がありました。具体的には残業時間等のセルに時間ではなく #### のような表示がされてしまっています。

デバッグしてみたところ、ある所まで進むと、そこでエラーメッセージもなく突然実行が中断していました。

試しに、プログラムの動作に影響がないように、その部分のコードを変更したところ、とりあえずそこは進むようになりましたが、また今度は何の変哲もない、次のような別の場所で止まるようになってしまいました。

コード自体に問題があるわけではなく、モジュールが何らかの理由で壊れてしまっているようです。

そこで、その標準モジュールのコードをすべて削除して、正常に動いているファイルからコピペし直したところ、とりあえず正常に動作するようになりました。

今回、利用者はファイルの編集をスマートフォンのExcelで行ったかもしれないので、もしかしたら、その際に破損したのかもしれません。


数か月前に、社内でマクロが破損するというトラブルが数回発生しました。これについては、Excelのアップデートもしくは、Acrobat のアドインが原因だったのではないかと思っています。妻の職場でも同様に発生していたという事です。しばらくしたら、発生しなくなりました。

マクロがエラーもなく突然動作しなくなったら、コードを貼付し直してみるとよいかもしれません。他も破損している可能性があるので根本的な解決にはならないかもしれませんが、その場しのぎにはなります。

コメント

アクセス数の多い投稿

セキュリティ対策ソフトのノートンが詐欺ソフトまがいになってしまってショック

ZIPファイルを開こうとすると、展開を完了できません、と言われる

Excel 2019 クエリが原因で日本語入力の一文字目が勝手に確定する

突然滅茶苦茶遅くなったPCがWindows Updateのキャッシュクリアで復活

Windows セキュリティーのビックリマークが消えない

Power Automate Desktopでブラウザでダウンロードしたファイルを処理する

Excel VBAからODBCを使ってデータを簡単に取得する

オカムラ家具のOAチェアー、コンテッサを分解清掃

Teamsで日本語入力すると左上に変換ウィンドウが出る

ChatGPTが日本語からVBAのコードを生成できてたまげる