エクセルでファイルを開こうとしたときに、「ファイルを開くことができません」「拡張子が正しくありません」「ファイルが破損しています」といったエラーメッセージが表示されて困った経験はありませんか?
この記事では【Excel】エクセルでファイルが開かない(原因と対処法・拡張子エラー・破損修復)問題の解決方法について解説していきます。
ポイントは
・拡張子の確認と修正
・エクセルの修復機能を使った開き方
・一時ファイルや自動保存からの復元
・互換性の問題への対処
です。
それでは詳しく見ていきましょう。
エクセルでファイルが開かない原因と基本の確認事項
エクセルファイルが開かない場合、その原因はいくつかのパターンに分類できます。
まず原因を正確に把握することが、適切な対処法を選ぶ上で非常に重要です。
原因を把握せずに闇雲に操作を繰り返すと、かえってファイルが復元不可能な状態になってしまうこともあるため、焦らず順番に確認していきましょう。
よくある原因の種類
エクセルファイルが開かない主な原因として、以下のようなものが挙げられます。
まず、拡張子の不一致があります。
ファイルの実際の形式と拡張子が一致していない場合、エクセルはファイルを正しく認識できずエラーを表示します。
たとえば、本来CSVファイルであるのに「.xlsx」の拡張子が付いている、あるいはその逆のケースがよく見られます。
次に、ファイルの破損です。
保存中のフリーズや強制終了、ストレージの不具合などによってファイルが破損し、正常に開けなくなることがあります。
また、バージョンの互換性問題も原因のひとつです。
古いバージョンのエクセルで作成されたファイルや、新しい形式で保存されたファイルを別のバージョンのエクセルで開こうとすると、対応できずエラーになることがあります。
さらに、ファイルへのアクセス権限の問題もあります。
読み取り専用の設定や、ネットワーク共有上のアクセス制限により、ファイルが開けないケースも存在します。
以下のサンプルデータを例に、各対処法を確認していきましょう。
| No. | 商品名 | カテゴリ | 単価(円) | 在庫数 | ファイル形式 |
|---|---|---|---|---|---|
| 1 | 桜餅 | 和菓子 | 180 | 120 | .xlsx |
| 2 | 柏餅 | 和菓子 | 200 | 85 | .xlsx |
| 3 | マシュマロ | 洋菓子 | 150 | 200 | .csv |
| 4 | チョコ | 洋菓子 | 300 | 60 | .xlsm |
| 5 | アボカド | 食材 | 250 | 40 | .xls |
このようなデータが入ったファイルが開けない場合、まず「ファイル形式」の列を確認することが第一歩です。
エクセルでファイルが開かない対処法1【拡張子エラーの確認と修正】
エクセルファイルが開かない原因として最も多いのが、拡張子に関するエラーです。
拡張子とはファイル名の末尾についている「.xlsx」「.xls」「.csv」などの文字列で、ファイルの種類を示す重要な情報です。
この拡張子が実際のファイル形式と一致していない場合、エクセルは「このファイルは開けません」と判断してエラーを表示します。
拡張子の表示を確認する方法
まず、Windowsのエクスプローラーで拡張子が表示されているかを確認します。
初期設定では拡張子が非表示になっていることが多いため、「表示」タブをクリックし「ファイル名拡張子」にチェックを入れて表示させましょう。

拡張子が表示されたら、ファイルが実際にエクセル形式(.xlsx・.xls・.xlsm)であるかを確認します。
たとえば「商品リスト.xlsx」と表示されているはずが「商品リスト.csv.xlsx」のように二重拡張子になっているケースも見られます。
拡張子を正しく修正する方法
拡張子が間違っている場合は、ファイルを右クリックして「名前の変更」を選択し、拡張子部分を正しいものに書き換えます。
たとえばCSVデータなのに「.xlsx」が付いている場合は「.csv」に変更することで開けるようになることがあります。
ただし、拡張子を変更してもファイルの中身は変わらないため、元の形式と異なる拡張子に変更しても正しく開けるとは限りません。
あくまでも拡張子と実際の形式が一致していない場合の修正として行いましょう。
また、別の方法として「メモ帳でファイルを開く」という手があります。
対象のファイルを右クリックして「プログラムから開く」→「メモ帳」を選択すると、ファイルの先頭部分がテキストとして表示されます。
そこに「PK」という文字が見えればzipベースの.xlsx形式、「ID」などの文字が見えれば旧形式の.xlsの可能性があります。
エクセルでファイルが開かない対処法2【エクセルの修復機能を使う】
ファイルが破損している場合や、通常の方法で開こうとしてもエラーになる場合には、エクセルに標準搭載されている「修復機能」を使うのが有効です。
エクセルには「開いて修復する」というオプションがあり、破損したファイルを強制的に読み込みながら修復を試みることができます。
「開いて修復する」の使い方
まず、エクセルを起動して「ファイル」タブをクリックし、「開く」を選択します。
次に「参照」をクリックして対象のファイルを選びます。
ここで重要なのが、すぐに「開く」をクリックせず、ボタン右側の小さな▼矢印をクリックすることです。

ドロップダウンメニューが表示されたら「開いて修復する」を選択します。
その後「修復」をクリックすると、エクセルがファイルの修復を試みます。
修復に成功すれば、ファイルが開き、データを確認できます。
修復ができなかった場合は「データの抽出」というオプションも表示されることがあります。
この場合は完全なファイルとしての復元は難しいものの、数値データや数式などを部分的に取り出すことが可能です。
修復後のデータを確認する
修復が完了したら、データが正しく復元されているかを確認しましょう。
先ほどのサンプルデータであれば、桜餅・柏餅・マシュマロ・チョコ・アボカドの各行のデータが正しく表示されているかをひとつひとつ確認します。
修復後はすぐに別名保存することを強くおすすめします。
同じファイル名で上書き保存してしまうと、修復前のデータに戻せなくなるためです。
エクセルでファイルが開かない対処法3【自動保存・一時ファイルからの復元】
エクセルには、一定間隔で自動的にファイルを保存する「自動回復」機能が備わっています。
ファイルが突然開けなくなった場合やデータが消えてしまった場合でも、この自動保存データから復元できる可能性があります。
自動回復ファイルは、エクセルが強制終了や予期せぬクラッシュの際に自動的に保存される一時ファイルです。
自動回復ファイルの保存場所を確認する
自動回復ファイルの保存場所は、エクセルのオプションから確認できます。
「ファイル」→「オプション」→「保存」の順に進むと、「自動回復用ファイルの場所」というパスが表示されています。

このパスをコピーしてエクスプローラーのアドレスバーに貼り付けると、自動保存されたファイルの一覧が確認できます。
ファイル名に日時が含まれているため、最も新しいものを選んで開いてみましょう。
一時ファイルから復元する方法
Windowsには「%temp%」という一時フォルダが存在し、そこにエクセルの一時ファイルが保存されていることがあります。
エクスプローラーのアドレスバーに「%temp%」と入力してEnterキーを押すと、一時ファイルの一覧が表示されます。
「Excel」「~$」などのキーワードでフィルタリングすると、対象のファイルを見つけやすくなります。
見つかったファイルを「.xlsx」の拡張子を付けてデスクトップにコピーし、エクセルで開いてみましょう。
OneDriveやSharePointのバージョン履歴を活用する
ファイルをOneDriveやSharePoint上に保存していた場合は、バージョン履歴からの復元も選択肢のひとつです。
ファイルを右クリックして「バージョン履歴」を選択すると、過去の保存状態の一覧が表示されます。
正常に開けていた時点のバージョンを選んで復元することで、問題を解決できる可能性があります。
エクセルでファイルが開かない対処法4【互換性と設定の問題への対処】
ファイルの破損や拡張子の問題がなくても、エクセルのバージョンや設定によってファイルが開けないことがあります。
特に、異なるバージョンのエクセル間でファイルをやり取りする場合や、マクロが含まれるファイルを開く際に互換性の問題が発生しやすくなります。
互換性モードで開く方法
古いエクセル(2003以前)で作成された「.xls」形式のファイルを新しいエクセルで開く場合、タイトルバーに「互換モード」と表示されることがあります。
この状態でも基本的な操作は可能ですが、一部の新機能が使えない制限があります。
逆に、新しい「.xlsx」形式のファイルを古いエクセルで開こうとすると、対応できずエラーになる場合があります。
この場合は、ファイルを作成した側が「名前を付けて保存」から「Excel 97-2003 ブック(.xls)」形式で保存し直すことで対応できます。

保護されたビューの解除
インターネットやメールから取得したエクセルファイルは、「保護されたビュー」で開かれることがあります。
この状態では編集ができず、ファイルが開けていないように感じる方も多いです。
画面上部に黄色いバーが表示されている場合は、「編集を有効にする」ボタンをクリックすることで通常の編集モードに切り替わります。

アドインや外部参照の問題への対処
エクセルファイルに他のファイルへの外部参照や、特定のアドインが必要な機能が含まれている場合、それらが存在しない環境では正常に開けないことがあります。
この場合は、エクセルのオプションから「アドイン」を確認し、必要なアドインを有効化するか、外部参照を更新・削除することで問題が解決することがあります。
エクセルでファイルが開かない対処法5【VBAマクロを使った修復試行】
通常の方法で修復ができない場合、VBAマクロを使ってファイルのデータを別のブックに転送することで、データを救出できる場合があります。
VBAはエクセルに内蔵されたプログラミング言語で、破損ファイルから読み取れるデータを別のブックにコピーする処理を自動化できます。
VBAを使ったデータ転送の例
以下のVBAコードは、破損ファイルを強制的に開き、読み取れたデータを新しいブックにコピーするサンプルです。
Sub RepairAndCopyData()
Dim srcPath As String
Dim srcWb As Workbook
Dim newWb As Workbook
Dim srcWs As Worksheet
Dim newWs As Worksheet
' 修復したいファイルのパスを指定
srcPath = "C:\Users\YourName\Desktop\商品リスト.xlsx"
' エラーが発生しても処理を継続
On Error Resume Next
' 破損ファイルを開く(修復を試みる)
Set srcWb = Workbooks.Open(Filename:=srcPath, CorruptLoad:=xlRepairFile)
If srcWb Is Nothing Then
MsgBox "ファイルを開けませんでした。"
Exit Sub
End If
' 新しいブックを作成
Set newWb = Workbooks.Add
Set newWs = newWb.Sheets(1)
Set srcWs = srcWb.Sheets(1)
' データをコピー
srcWs.UsedRange.Copy newWs.Range("A1")
' 新しいブックを保存
newWb.SaveAs "C:\Users\YourName\Desktop\商品リスト_修復済み.xlsx"
MsgBox "データの転送が完了しました。"
' ブックを閉じる
srcWb.Close SaveChanges:=False
On Error GoTo 0
End Sub
このコードでは、「CorruptLoad:=xlRepairFile」というオプションを指定することで、エクセルが修復モードでファイルを開こうとします。
読み取れたデータは新しいブックに転送され、「商品リスト_修復済み.xlsx」として保存されます。
VBAエディターの起動方法
VBAエディターはAlt+F11キーで起動できます。
起動後、「挿入」メニューから「標準モジュール」を選択し、上記のコードを貼り付けてF5キーで実行します。

ファイルパスは自分の環境に合わせて書き換えてください。
また、コードを実行する前に保存先フォルダが存在することを確認しておきましょう。
まとめ エクセルでファイルが開かない原因と対処法(拡張子エラー・100%・非表示・破損で修復)問題の解決方法
エクセルでファイルが開かない場合の対処法をまとめると、以下の手順で試していくのがおすすめです。
まず最初に確認すべきは拡張子の問題です。
ファイルの拡張子が実際の形式と一致しているかをエクスプローラーで確認し、必要であれば修正しましょう。
次に試したいのが、エクセルの「開いて修復する」機能です。
ファイルを選択する際に「▼」ボタンから「開いて修復する」を選ぶだけで、エクセルが自動的に修復を試みてくれます。
それでも開けない場合は、自動回復ファイルや一時ファイルからの復元を検討しましょう。
オプション画面で自動回復ファイルの保存場所を確認し、最新の自動保存データを探すことで救出できることがあります。
互換性やバージョンの問題が原因の場合は、保護されたビューの解除やファイル形式の変換で対応できます。
最終手段としてVBAマクロを使ったデータ転送も有効な選択肢です。
いずれの対処法を試す場合も、作業前に元のファイルを別の場所にコピーしておくことが大切です。
焦らず順番に試していくことで、ほとんどのケースでファイルを救出できるでしょう。
エクセルファイルのトラブルは突然発生することが多いため、日頃からOneDriveや外部ストレージへのバックアップを習慣にしておくことが最大の予防策となります。


コメント