Excelのマクロが急に動かなくなったときに、最初に確かめる5つのこと

Excelのマクロが急に動かなくなったときに、最初に確かめる5つのこと

記事
IT・テクノロジー

はじめに


昨日まで動いていたマクロが、今日は動かない。ボタンを押しても何も起きない、あるいは見慣れないエラーの画面が出る。作った人がもう社内にいないと、どこから手をつければいいか分からず困ってしまいます。実は、急に動かなくなったマクロの多くは、コードそのものではなく「まわりの変化」が原因です。この記事では、コードを読む前に確かめたい5つのことを、よくある順に紹介します。

確認1:マクロが無効になっていないか


最も多いのがこれです。ファイルを開いたときに、画面の上に「セキュリティの警告 マクロが無効にされました」という黄色い帯が出ていないか確認します。出ていれば「コンテンツの有効化」を押します。

最近は、インターネットや社外から受け取ったファイルは、マクロがはじめから止められるようになっています。この場合は赤い帯が出て、ボタンを押しても有効にできません。ファイルを保存した場所で右クリックし、「プロパティ」の一番下にある「許可する」にチェックを入れてから開き直すと動くようになります。出どころが分からないファイルでは行わないでください。

確認2:ファイルの形式が「.xlsm」のままか


マクロは「.xlsm」(マクロ有効ブック)の形式でしか保存されません。誰かが「名前を付けて保存」で「.xlsx」にしてしまうと、保存した時点でマクロは消えてしまいます。ファイル名の末尾を確認し、「.xlsx」になっていたら、古い「.xlsm」のファイルが残っていないか探してみてください。

確認3:シート名や列の位置が変わっていないか


マクロは「売上」という名前のシートの「C列」のように、場所を決め打ちで書かれていることがよくあります。シート名を「売上2026」に変えた、途中に列を1本足した、見出しの行を1行増やした。こうした小さな変更で、マクロは別の場所を読んだり、「インデックスが有効範囲にありません」というエラーで止まったりします。最近表の形を変えていないか、思い出してみてください。

確認4:参照しているファイルやフォルダが移動していないか


別のファイルからデータを読み込むマクロは、そのファイルの保存場所を覚えています。共有フォルダの名前が変わった、パソコンを入れ替えてユーザー名が変わった、ファイルを別の場所に移した。こうした変化で「ファイルが見つかりません」と止まります。エラーの画面で「デバッグ」を押すと、止まった行が黄色く表示されます。その行にファイルの場所が書かれていれば、今の場所と比べてみましょう。

確認5:Excelのバージョンや、32ビット・64ビットの違い


パソコンを新しくした直後に動かなくなった場合は、Excelの違いを疑います。古いマクロの中には、Windowsの機能を直接呼び出す部分があり、64ビット版のExcelではそのままでは動かないものがあります。「このプロジェクトのコードは、64ビットシステムで使用するように更新する必要があります」と出たら、このケースです。この場合はコードの書き換えが必要になります。

エラーの画面は、写真を撮っておく


どの確認でも直らないときは、エラーの画面を写真に撮っておくと原因探しが早くなります。押さえておきたいのは3つです。

・エラーの番号と文章(例:「実行時エラー '9'」)
・「デバッグ」を押したときに黄色くなった行
・動かなくなる直前に変えたこと(ファイルの場所、表の形、パソコンなど)

この3つがそろっていれば、コードを全部読まなくても、原因の見当がつくことがほとんどです。

まとめ


マクロが急に動かなくなったら、①マクロが無効になっていないか、②ファイル形式が「.xlsm」か、③シート名や列が変わっていないか、④参照先のファイルが移動していないか、⑤Excelの環境が変わっていないか、の順に確かめてみてください。それでも直らないときは、エラーの画面を残しておくと、相談したときの解決が早くなります。

マクロのエラーの修正や、ちょっとした機能の追加でお困りの方は、出品中のサービスからご相談ください。

サービス数100万件のスキルマーケット、あなたにぴったりのサービスを探す