VBA: 突然マクロが壊れて実行が中断する
就業時間を計算するExcelファイルが動作しなくなったと連絡がありました。具体的には残業時間等のセルに時間ではなく #### のような表示がされてしまっています。
デバッグしてみたところ、ある所まで進むと、そこでエラーメッセージもなく突然実行が中断していました。
試しに、プログラムの動作に影響がないように、その部分のコードを変更したところ、とりあえずそこは進むようになりましたが、また今度は何の変哲もない、次のような別の場所で止まるようになってしまいました。
コード自体に問題があるわけではなく、モジュールが何らかの理由で壊れてしまっているようです。
そこで、その標準モジュールのコードをすべて削除して、正常に動いているファイルからコピペし直したところ、とりあえず正常に動作するようになりました。
今回、利用者はファイルの編集をスマートフォンのExcelで行ったかもしれないので、もしかしたら、その際に破損したのかもしれません。
数か月前に、社内でマクロが破損するというトラブルが数回発生しました。これについては、Excelのアップデートもしくは、Acrobat のアドインが原因だったのではないかと思っています。妻の職場でも同様に発生していたという事です。しばらくしたら、発生しなくなりました。
マクロがエラーもなく突然動作しなくなったら、コードを貼付し直してみるとよいかもしれません。他も破損している可能性があるので根本的な解決にはならないかもしれませんが、その場しのぎにはなります。
コメント
コメントを投稿