Excel・Wordで発生する「非表示モジュール内のコンパイルエラー」の直し方
「非表示モジュール内のコンパイルエラー(Compile error in a hidden module)」は、Microsoft WordやMicrosoft Excelを起動した際に表示されることがあるエラーメッセージです。このメッセージが表示されると、その後アプリケーションが起動しなくなるのが特徴です。
Excel・Wordの非表示モジュールのコンパイルエラーを修正する方法
このエラーは、VBAコードがアプリケーションのバージョンやアーキテクチャ(32ビット/64ビット)と互換性がない場合に発生します。たとえば、32ビット版のMicrosoft Office向けに作成されたコードが、64ビット版Officeで実行されようとしたケースなどが該当します。
Microsoftによると、次のように説明されています。
保護された(非表示の)モジュール内のVBAコードにコンパイルエラーが存在する場合に、このエラーが発生します。モジュールが保護されているため、具体的なエラー内容は表示されません。
以下の対処法を試してみてください。
- VBAコードモジュールの保護を解除する
- コマンドプロンプトでOCXファイルを再登録する
- Adobe Acrobatを更新する
- Pdfmakerファイルを別のフォルダーへ移動する
- Nortonアンチウイルスを更新またはアンインストールする
それでは、それぞれの方法を詳しく見ていきましょう。
1. VBAコードモジュールの保護を解除する
このエラーが発生している場合は、まず以下の手順を試してください。
- ドキュメントやプロジェクト内のVBAコードにアクセスできる場合は、モジュールの保護を解除してからコードを再度実行し、具体的なエラー内容を確認します。
- ドキュメント内のVBAコードにアクセスできない場合は、ドキュメントの作成者に連絡し、非表示モジュール内のコードを更新してもらいましょう。
これがMicrosoft公式の回避策です。解決しない場合は、続けて以下の方法を試してください。
2. コマンドプロンプトでOCXファイルを再登録する
このエラーは、Windows Updateの影響で発生することもあります。そのため、mscomctl.ocxファイルを再登録すると問題が解決する場合があります。以下の手順でOCXファイルを再登録してください。
Windows + Xキーを押し、「コマンド プロンプト(管理者)」を選択して、管理者権限でコマンドプロンプトを起動します。
32ビット版Windowsの場合は、次のコマンドを入力します。
regsvr32 -u c:\windows\system32\mscomctl.ocx regsvr32 c:\windows\system32\mscomctl.ocx
64ビット版Windowsの場合は、次のコマンドを入力します。
regsvr32 -u c:\windows\syswow64\mscomctl.ocx regsvr32 c:\windows\syswow64\mscomctl.ocx
3. Adobe Acrobatを更新する
Adobe Acrobatを使用している場合に有効な方法です。
このエラーは、MS Officeフォルダー内に存在するAdobe Acrobatのテンプレートファイル2つが原因で発生することがあります。エラーを避けるためには、Adobeソフトウェアを必ず公式サイトからインストールすることをおすすめします。エラーが発生した場合は、PDFをWord、Excel、PowerPointなど他のMicrosoft 365アプリ形式で書き出すことも可能です。Adobeを更新するには、Adobeウィンドウの「ヘルプ」をクリックし、「アップデートをチェック」を選択してアップデーターウィンドウを開きます。アップデートがある場合は、「ダウンロードしてインストール」ボタンを押しましょう。
4. Pdfmakerファイルを別のフォルダーへ移動する
Pdfmakerを使用している場合に有効な方法です。
このエラーは、Adobe Acrobatの2つのファイル、すなわちPdfmaker.xlaとPdfmaker.dotに関連しています。これらのファイルをMS Officeフォルダーの外へ移動することで、エラーが解消される可能性があります。以下の手順も参考にしてください。
- タスクバーの検索ボックスを開き、「Pdfmaker.xla」と入力してファイルを検索します。
- 同様に「Pdfmaker.dot」と入力してファイルを検索します。見つかったファイルを右クリックし、「ファイルの場所を開く」を選択してエクスプローラーでフォルダーを開きます。
- ファイルが見つからない場合は、エクスプローラーでMS Officeの「STARTUP」フォルダーや「XLSTART」フォルダーを直接開いてみてください。
- エクスプローラーで該当ファイルを右クリックして「切り取り」を選択し、デスクトップなど別のフォルダーを右クリックして「貼り付け」を実行して移動します。
5. Nortonアンチウイルスを更新またはアンインストールする
Nortonソフトウェアを使用している場合に有効な方法です。
Nortonアンチウイルスも、このコンパイルエラーに関連していることがあります。インストール済みの場合は、ソフトウェアを更新することで問題が解決するかもしれません。システムトレイのNortonアンチウイルスアイコンを右クリックし、「Norton LiveUpdate」を選択してアップデートを確認できます。
Nortonアンチウイルスの更新でも問題が解決しない場合は、Nortonソフトウェアをアンインストールしてみましょう。
Windows + Rショートカットキーで「ファイル名を指定して実行」を開きます。「appwiz.cpl」と入力して「OK」ボタンをクリックします。一覧からNortonアンチウイルスを選択し、「アンインストール」ボタンをクリックして、確認後にソフトウェアを削除します。
上記のいずれかの解決策によって、非表示モジュール内のコンパイルエラーが修正され、WordとExcelを再び起動できるようになることを願っています。ご不明な点やご意見がありましたら、お気軽にお知らせください。
Excelをセーフモードで開くには?
Excelをセーフモードで開くには、プログラムの起動中にCtrlキーを押し続けます。また、コマンドラインから起動する際にセーフスイッチ(excel.exe /safe)を使用する方法もあります。
関連記事:Word・Excel・PowerPointで「ファイルが破損しているため開けません」エラーを修正する方法
Microsoft Wordのセーフモードとは?
Microsoft Officeを通常どおり使用できない場合、内蔵されている安全機能を利用できます。WordやExcelを開くたびにクラッシュするような場合は、当該アプリケーションをセーフモードで起動すれば、通常どおり作業を続けられるようになります。
-
【保存版】Excelで「エラーが発生しました」と表示される問題を解決する11の方法
インドの眼鏡ブランドLenskartの共同創業者であり、「Shark Tank India」の審査員でもあるペユーシュ・バンサル氏は、番組の中で「MS Excelなしでは自分の人生は想像できない」と語りました。これは多くの企業や個人ユーザーにも共通する考えではないでしょうか。 Excelは1987年にMac向けに初めて登場し、その後Windows版がリリースされると、瞬く間に世界トップクラスの表計算ソフトウェアへと成長しました。しかし、Windowsにはクラッシュやバグがつきもので、「申し訳ありませんが、Excelでエラーが発生しました(Were sorry but Excel has run
-
Excelの循環参照エラーを解消する完全ガイド|原因・検出・修正方法を徹底解説
Excelで数式を入力しようとしたのに、なぜか計算が実行されず「循環参照」という警告が表示されたことはありませんか?これは、数式が自分自身のセルを参照してしまうことで発生する問題で、毎日多くのユーザーが同じトラブルに悩まされています。この記事では、循環参照エラーの基本知識と、なぜ避けるべきなのかをわかりやすく解説します。さらに、Excelシート内の循環参照エラーを分析・検出・修正する具体的な手順や、どうしても必要な場合に循環数式を有効活用する方法まで、順を追ってご紹介します。 循環参照とは何か? セルに入力した数式が、その数式自身が入力されているセルを参照してしまう状態を循環参照と呼びます。