完全解説:エクセル「実行時エラー‘1004’」の原因と対処

Tioka |カテゴリ:ファイル復旧| 2024年05月10日に更新

概要:

エクセルの「実行時エラー‘1004’」を修復するにはどうしたらいいですか?本文では、各種の「実行時エラー‘1004’」の原因を解説する上、それに対する対処法も皆さんに紹介していきたいと思います。また、ファイルが破損/破壊されている場合、本文ではその修復方法をも一緒に紹介します。

Microsoft Visual Basic for Applications (VBA)は、Windows OSでプログラムを作るために開発されるソフトです。Microsoft Officeスイート(ワード、エクセル、パワーポイント)などを使っている時に、VBAは内部のプログラミング言語として動作しています。

多くのユーザーから、ExcelでVBAを実行している時に、またはExcelマクロを試用している時に、「実行時エラー‘1004’」エラーが発生し、それから当該エクセルファイルにアクセスできなくなることがあります。もしこのような問題に遭った場合、本文を見逃しないでください。本文では、「実行時エラー‘1004’」エラーが発生する原因を解説した上、このエラーに対する対処法をも紹介します。

「実行時エラー‘1004’」について

「実行時エラー‘1004’」が発生する時に、エラーメッセージが自動的にポップアップされます。エラーメッセージには、このエラーに関するもっと詳しい情報があります。一般的には、下記の3つの詳細エラーメッセージが一番多く見られます。

  • 1.申し分けございません。XXXXファイルが見つかりません。名前が変更されたか、移動や削除が行われた可能性があります。
  • 2.アプリケーション定義またはオブジェクト定義のエラーです。
  • 3.RangeクラスのCopuメソッドが失敗しました。

エクセルで「実行時エラー‘1004’」が発生する原因

「実行時エラー‘1004’」を修復するには、まずこのエラーが出る原因を知っておく必要があると思います。次は、「実行時エラー‘1004’」を引き起こすよく見られる原因を皆さんに紹介します。

指定のファイルが存在しない

存在しないファイルを開こうとした時に、「実行時エラー‘1004’」が発生します。このような場合、エラーメッセージには、「申し分けございません。XXXXファイルが見つかりません。名前が変更されたか、移動や削除が行われた可能性があります。」のような表現があります。

マクロの名前のエラー

実行中のマクロは、元のワークシートでマクロを実行する前に保存して閉じなかった定義名のブックにコピーしています。

ファイル衝突

VBA Excelファイルを開こうとした時に、当該ファイルが他のプログラムに利用されているので、ファイル衝突が発生します。

Legendオブジェクトが多すぎる

エクセルのプロチャートには、Legendオブジェクトの数が制限を超えているので、Excelチャートで表示されません。

Excelファイルの破損

もしExcelファイルが破損/破壊されている場合も、「実行時エラー‘1004’」が発生します。

エクセル「実行時エラー‘1004’」を修復する方法

様々な原因によって、この「実行時エラー‘1004’」が発生する可能性があるとしても、比較的に通用される方法があります。次はこれらの通用方法を紹介しますので、参考してください。

対処法1.破損したファイルを修復する

もし上記の全ての解決策が役立たない場合、開こうとしているExcelファイルが破損している可能性があります。破損したExcelファイルを修復するためには、ファイル修復ソフトウェアを利用することができます。EaseUS Fixo は良い選択です。

このツールを使用して、「修復」ボタンをクリックし、全ての破損したドキュメントを修復するのを待ちます。

  • 様々な破損したファイルを修復することができます。これには、Word、Excel、PDFドキュメントの修復が含まれます。
  • 効率的にWordの読めない内容を修正します。
  • 破損したPDFファイルを修復し、テキスト、コメント、ラベル、グラフィックなどを抽出します。
  • Microsoft Office 2019、2016、2013、2010、およびそれ以前のバージョンと互換性があります。

Step 1.「ファイルの修復」で「ファイルの追加」を選択し、修復するドキュメントを追加します。

Step 2.追加されたら、「すべてを修復」を選択して修復処理を開始します。ファイルのサイズや損傷の程度によって、しばらく時間がかかります。

Step 3.復元完了後にプレビューやダウンロードが可能です。

対処法2.ファイルの存在の確認

存在しないファイルを開こうとした時に、このエラーが発生するので、開きたいファイルが存在するかどうか、またはファイル名が変更されたかどうかを確認する必要があります。

対処法3.GWXL97.XLAファイルを削除

ファイルの存在に問題がない場合は、一番簡単な方法は、「実行時エラー‘1004’」を見つけて削除することです。

ステップ1.【C:\Program Files\MS Office\Office\XLSTART】というパスに移動します。

ステップ2.【GWXL97.XLA】を見つけて削除します。

ステップ3.エクセルファイルを開き直し、エラーが解決されるかどうかを確認します。

対処法4.セキュリティセンターで「VBAプロジェクトオブジェクトモデルへのアクセスを信頼する」をチェック

セキュリティセンターでVBAプロジェクトオブジェクトモデルへのアクセスを信頼することも役立つ対処法です。それでは、下記のステップに従って操作しましょう。

ステップ1.Excelを開き、左上にある「ファイル」→「オプション」の順にクリックします。

ステップ2.左側のメニューでセキュリティセンターをクリックし、「セキュリティセンターの設定」ボタンをクリックします。

ステップ3.セキュリティセンターの設定画面で「マクロの設定」を選択し、「VBAプロジェクトオブジェクトモデルへのアクセスを信頼する」をチェックして、OKボタンをクリックします。

上記の操作が終わりましたら、またExcelファイルが開かれるかどうかを確認します。

対処法5.他のExcelテンプレートを作成する

この方法は少し複雑かもしれないが、非常に役立つので、お試しください。

ステップ1.新しいExcelワークブックを作成し、その中でワークシートが1つのみがあることを確認します。

ステップ2.ワークブックをフォーマットして、必要なデータを書き込みます。

ステップ3.ファイル」→「名前を付けて保存」の順にクリックして、ファイル名を設定して、「ファイルの種類」の展開矢印をクリックします。

Excel 2003: Excel 97-2003テンプレートを選択

Excel 2007及びそれ以降: Excelテンプレートを選択

ステップ4.保存」をクリックして続行します。

ここで、次のコードを使って当該テンプレートを挿入することができます。

  • Add Type:=パス\ファイル名

パス:先に作成したテンプレートファイルの保存場所
ファイル名:テンプレートファイルのファイル名

まとめ

この記事を読むと、実行時エラー1004の修正方法について詳しく理解できるはずです。Excelファイルが破損した場合、プロのファイル回復ツールを使用する方が賢明です。EaseUS Fixo は、Word、Excel、PowerPoint、PDFファイルの修復を助けるために、多くのユーザーやIT専門家から高く推奨されています。

「実行時エラー‘1004’」に関するよくある質問

1.エクセルで「実行時エラー‘1004’」を回避する方法はありますか?

はい、あります。まず、エクセルを開き、「ファイル」>「その他」>「オプション」をクリックします。その後、左のメニューの「トラストセンター」>「トラストセンターの設定」をクリックします。最後は「マクロの設定」を選択し、「VBAプロジェクトオブジェクトモデルへのアクセスを信頼する」をチェックすると完了です。

2.実行時に他の可能なエラー番号は何の意味ですか?

実行時、エラー‘1004’の他にも、多くのエラー番号があります。一般的なエラー番号は次のとおりです。「エラー‘9’」の意味はインデックスが有効範囲にありませんので、存在しない配列要素を参照していないか確認してください。「エラー‘53’」はファイルが見つからない意味で、対策は存在しないファイルを参照しています。「エラー‘54’」はファイル モードが不正なので、ファイルを開いたときのモードに対応していないステートメントを使用してください。

3.VBAエラー1004を処理する方法は?

「既に開いている本と同じ名前の本を開こうとしたとき」VBAエラー1004の対処方法は以下の通りです。開いているExcelのファイルを閉じるか、別のファイルのタイトルを指定してください。