【Excel】旧バージョンxlsで保存される原因と対処!Excelの互換モード解除と最新形式への変換

【Excel】旧バージョンxlsで保存される原因と対処!Excelの互換モード解除と最新形式への変換
🛡️ 超解決

Excelで作成したファイルを保存する際、意図せず古い「.xls」形式で保存されてしまうことがあります。この現象は、Excelが「互換モード」で開いている場合に発生しやすくなります。互換モードのままでは、最新のExcel機能が利用できず、作業効率が低下する原因となります。この記事では、Excelが.xls形式で保存される原因を特定し、互換モードを解除して最新の.xlsx形式に変換する具体的な手順を解説します。

これにより、最新のExcel機能を活用し、より安全かつ効率的にファイルを管理できるようになります。

【要点】Excelが旧バージョンxlsで保存される互換モードの解除と最新形式への変換

  • 互換モードの確認方法: Excelのタイトルバーに表示される「互換モード」の有無で判断します。
  • 最新形式への変換手順: 「ファイル」タブから「名前を付けて保存」を選択し、ファイルの種類を「Excelブック (*.xlsx)」に変更します。
  • 互換モード解除のメリット: 最新のExcel関数や機能が利用可能になり、ファイル破損のリスクが低減します。

ADVERTISEMENT

Excelが互換モードになる原因

Excelファイルが互換モードで開かれる主な原因は、ファイルが古いExcelバージョン(Excel 97-2003形式、.xls)で保存されているか、あるいはその形式で保存するように設定されているためです。古い形式のファイルを開いた場合、Excelは最新の機能が利用できないことを示すために互換モードで動作します。これにより、一部の新しい関数や書式設定、オブジェクトなどが正しく表示・編集できなくなることがあります。

また、Excelのオプション設定で、既定の保存形式が.xlsになっている場合も、新規作成したファイルが意図せず古い形式で保存される原因となります。この設定は、古いバージョンのExcelとの互換性を保つために意図的に変更されることがありますが、通常は最新の.xlsx形式を使用することが推奨されます。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

互換モードの確認と最新形式への変換手順

Excelファイルが互換モードで開かれているかどうかは、Excelウィンドウのタイトルバーを確認することで判断できます。タイトルバーに「互換モード」という表示があれば、そのファイルは古い形式で開かれています。この互換モードを解除し、最新の.xlsx形式に変換するには、以下の手順を実行します。

  1. 「ファイル」タブを選択
    Excelのリボンメニューにある「ファイル」タブをクリックします。
  2. 「名前を付けて保存」を選択
    左側のメニューから「名前を付けて保存」をクリックします。
  3. 保存場所を指定
    「参照」ボタンをクリックするか、最近使用した場所から保存したい場所を選択します。
  4. ファイルの種類を変更
    「ファイルの種類」のドロップダウンリストをクリックします。
  5. 「Excelブック (*.xlsx)」を選択
    表示されるリストの中から、「Excelブック (*.xlsx)」を選択します。これが最新のExcelファイル形式です。
  6. 「保存」ボタンをクリック
    ファイル名を確認し、必要であれば変更してから「保存」ボタンをクリックします。

この手順により、ファイルは最新の.xlsx形式で保存され、互換モードが解除されます。以降、このファイルを開く際には、最新のExcel機能がすべて利用できるようになります。

Excelの既定の保存形式を最新形式に変更する方法

新規作成したExcelファイルが常に古い.xls形式で保存されてしまう場合、Excelの既定の保存形式が変更されている可能性があります。この設定を変更することで、今後作成するファイルも自動的に最新の.xlsx形式で保存されるようになります。

  1. 「ファイル」タブを選択
    Excelのリボンメニューにある「ファイル」タブをクリックします。
  2. 「オプション」を選択
    左側のメニューの一番下にある「オプション」をクリックします。
  3. 「保存」を選択
    Excelのオプションダイアログボックスが表示されたら、左側のメニューから「保存」をクリックします。
  4. 「次の形式でファイルを保存する」を変更
    「次の形式でファイルを保存する」という項目を探します。
  5. 「Excelブック (*.xlsx)」を選択
    ドロップダウンリストをクリックし、「Excelブック (*.xlsx)」を選択します。
  6. 「OK」ボタンをクリック
    設定を保存するために「OK」ボタンをクリックします。

この設定変更により、次回以降Excelで新規ファイルを作成し保存する際に、既定で.xlsx形式で保存されるようになります。

ADVERTISEMENT

互換モード解除のメリットと注意点

Excelファイルを最新の.xlsx形式に変換し、互換モードを解除することには、いくつかの重要なメリットがあります。まず、最新のExcel関数(XLOOKUP関数、LET関数など)や高度なグラフ機能、条件付き書式、Power Queryなどの機能がすべて利用可能になります。これにより、より複雑で高度なデータ分析や可視化が可能になり、業務効率が大幅に向上します。

また、.xlsx形式はXMLベースのファイル形式であり、.xls形式よりもファイル破損のリスクが低減されます。データの一貫性が保たれやすくなり、予期せぬデータ損失を防ぐことができます。さらに、ファイルサイズが圧縮される傾向があり、ストレージ容量の節約にもつながります。

古いExcelバージョンとの互換性

一方で、互換モードを解除する際には注意点もあります。もし、そのExcelファイルを他のユーザーと共有する必要があり、そのユーザーがExcel 2007よりも古いバージョン(Excel 2003以前)を使用している場合、.xlsx形式ではファイルを開けない可能性があります。このような場合は、相手のExcelバージョンを確認し、必要であれば「Excel 97-2003ブック (*.xls)」形式で再度保存するなどの配慮が必要になります。

マクロを含むファイルの場合

マクロ(VBA)を含むExcelファイルの場合、互換モードの解除と保存形式の変更に際して注意が必要です。標準の「.xlsx」形式で保存すると、マクロは削除されてしまいます。マクロを保持したまま最新形式で保存したい場合は、「Excelマクロ有効ブック (*.xlsm)」形式を選択する必要があります。この形式であれば、マクロを維持したまま最新のExcel機能を利用できます。

よくある質問とトラブルシューティング

Q1: ファイルを.xlsx形式で保存しても、再度開くと互換モードになってしまう

この問題は、Excelのオプション設定で既定の保存形式が依然として古い形式になっているか、あるいは保存時に意図せず古い形式を選択している可能性があります。前述した「Excelの既定の保存形式を最新形式に変更する方法」の手順を再度確認し、設定が正しく行われているか確認してください。また、保存ダイアログボックスで「ファイルの種類」が「Excelブック (*.xlsx)」になっているかを毎回確認する習慣をつけることも有効です。

Q2: 互換モードのままでは、一部の書式設定が正しく表示されない

互換モードでは、最新のExcelで利用可能な高度な書式設定やオブジェクトが正しく扱われないことがあります。例えば、新しい条件付き書式ルールや、PowerPointなど他のOfficeアプリケーションから挿入したオブジェクトが、古い形式では互換性がなく表示が崩れることがあります。このような場合は、互換モードを解除し、.xlsx形式で保存することで、書式設定が正しく表示されるようになります。

Q3: 複数のExcelファイルを一括で.xlsx形式に変換したい

多数の.xlsファイルを.xlsx形式に一括変換したい場合、VBA(Visual Basic for Applications)を利用する方法があります。以下のVBAコードは、指定したフォルダ内のすべての.xlsファイルを検索し、.xlsx形式で保存し直すサンプルです。ただし、VBAコードの実行にはセキュリティ上の注意が必要であり、信頼できるソースからのコードのみを使用してください。

VBAコードの実行手順:

  1. VBAエディタを開く
    Excelで「Alt」+「F11」キーを押し、VBAエディタを開きます。
  2. 標準モジュールを挿入
    「挿入」メニューから「標準モジュール」を選択します。
  3. コードを貼り付け
    表示されたコードウィンドウに、以下のVBAコードをコピーして貼り付けます。
  4. フォルダパスを指定
    コード内の「FolderPath」変数を、変換したい.xlsファイルが保存されている実際のフォルダパスに書き換えます。
  5. コードを実行
    VBAエディタのメニューから「実行」>「Sub/ユーザーフォームの実行」を選択するか、「F5」キーを押してコードを実行します。

サンプルVBAコード:

Sub ConvertXLS_to_XLSX()
    Dim FolderPath As String
    Dim FileName As String
    Dim wb As Workbook
    Dim NewWb As Workbook

    ' ★★★ 変換したい.xlsファイルがあるフォルダパスを指定してください ★★★
    FolderPath = "C:\Users\YourUsername\Documents\ExcelFiles\" ' 例:末尾に\を付ける

    Application.ScreenUpdating = False ' 画面更新を停止して処理を高速化

    ' 指定フォルダ内の.xlsファイルを検索
    FileName = Dir(FolderPath & "*.xls")

    Do While FileName <> ""
        If FileName <> ThisWorkbook.Name Then ' 現在開いているブックは除外
            Set wb = Workbooks.Open(FolderPath & FileName)

            ' 最新形式 (.xlsx) で保存
            wb.SaveAs Filename:=FolderPath & Left(FileName, InStrRev(FileName, ".")) & "xlsx", FileFormat:=xlOpenXMLWorkbook
            wb.Close SaveChanges:=False
        End If
        FileName = Dir
    Loop

    Application.ScreenUpdating = True ' 画面更新を再開
    MsgBox "指定フォルダ内の.xlsファイルの変換が完了しました。", vbInformation
End Sub

注意: 上記VBAコードは、マクロを含まない.xlsファイルを対象としています。マクロを含む.xlsファイルを.xlsm形式で保存したい場合は、`wb.SaveAs Filename:=FolderPath & Left(FileName, InStrRev(FileName, “.”)) & “xlsx”, FileFormat:=xlOpenXMLWorkbook` の部分を `wb.SaveAs Filename:=FolderPath & Left(FileName, InStrRev(FileName, “.”)) & “xlsm”, FileFormat:=xlOpenXMLWorkbookMacroEnabled` に変更する必要があります。また、実行前に必ずバックアップを取ることを強く推奨します。

Excelの互換モード解除と最新形式への変換まとめ

Excelファイルが意図せず旧バージョンの.xls形式で保存され、互換モードになってしまう原因は、ファイルの形式自体やExcelの既定の保存設定にあります。この記事で解説した「名前を付けて保存」からの形式変更手順や、Excelオプションでの既定形式の変更により、この問題を解決できます。

互換モードを解除し、最新の.xlsx形式でファイルを保存することで、最新のExcel機能が利用可能になり、データ管理の安全性と効率が向上します。マクロを含むファイルの場合は、「.xlsm」形式での保存を忘れないように注意してください。これらの手順を実践し、Excelの機能を最大限に活用してください。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】