- 先に結論、どっちを保存すればいいか
- .xls と .xlsx の違いを一目でわかる比較表
- 実機で確かめた、行と列の上限の違い
- 【実機検証】.xls で保存すると上限を超えたデータは失われる(互換性チェックの警告を実機で確認)
- 【実機検証】同じ内容でも .xls のほうがファイルが大きい
- 【実機検証】.xlsx の正体はZIP+XML、.xls は旧バイナリ
- 新しい関数・機能は .xls では保持しきれない
- マクロは .xlsx では保存できない、.xlsm が必要
- 互換性とやり取りの実務での違い
- 自分のファイルが .xls か .xlsx かを見分ける方法
- .xls を .xlsx に変換する手順
- 大容量で軽くしたいなら .xlsb という選択肢も
- どちらを使えばよいかの結論
- よくある質問(FAQ)
- 実機で確認したことと、この記事で扱っていないこと
- 出典・引用サイト
先に結論、どっちを保存すればいいか
「.xls」と「.xlsx」のどちらで保存すればいいか迷ったときの答えは、ほとんどの場合とてもシンプルです。特別な理由がなければ .xlsx を使ってください。.xlsx は現在のExcelの標準形式で、扱えるデータ量が大きく、ファイルが軽く、壊れたときにも中身を救い出しやすい形式だからです。.xls は2007年より前の古いExcelの形式で、いまは「古いExcelを使っている相手にどうしても渡す必要があるとき」など、限られた場面だけで使うものになっています。
この記事にたどり着く方の多くは、次のどれかで困っています。「どっちで保存すべきか今すぐ決めたい」「取引先から古い .xls ファイルが送られてきた」「.xls を .xlsx に変換したい」「保存したはずのマクロが消えてしまった」。この記事は、そのすべてに順番に答えられるよう構成しています。まず結論を押さえ、次に理由を実機の検証で確かめ、最後に変換手順とよくある質問まで、ひととおり解決できるようにしました。
そして、この記事の中心にあるのは、当サイトが撮影に使っているパソコンのExcel 2019で実際に試して確かめた結果です。単に「新しいから .xlsx がよい」ではなく、.xls で保存すると上限を超えたデータが失われるという公式に明記された事実を、実機で再現し、実際に消える様子と警告ダイアログまで撮影して確かめた結果を含めて解説します。だからこそ、古い形式との付き合い方に不安がある方にも、根拠をもって判断していただけます。
.xls と .xlsx の違いを一目でわかる比較表
まずは両者の違いを、実務で気になるポイントごとに表にまとめました。細かい理由はこのあと順番に説明していきますが、全体像をつかむために最初にざっと目を通してみてください。どの項目も、あとの章で当サイトの実機検証や公式情報と照らし合わせて詳しく説明します。

| 比較する点 | .xls | .xlsx |
|---|---|---|
| 登場した時期 | Excel 2003 以前の古い形式 | Excel 2007 以降の標準形式 |
| 拡張子 | .xls | .xlsx |
| ファイルの中身 | OLE2複合ファイル(入れ物)+BIFF8(記録形式) | ZIPで圧縮されたXMLの集まり |
| 行の上限 | 65,536 行 | 1,048,576 行 |
| 列の上限 | 256 列(IV列まで) | 16,384 列(XFD列まで) |
| 同じ内容でのファイルサイズ | 大きい(当サイト実測で約2.82倍) | 小さい(圧縮されている) |
| 圧縮の有無 | なし | あり(ZIP圧縮) |
| マクロの保存 | 保存できる | 保存できない(.xlsm が必要) |
| 新しい関数・機能 | 保持できないことがある | そのまま保持できる |
| おすすめの用途 | 古いExcelの相手に渡すときだけ | ふだんの作業すべて |
この表を見るだけでも、扱えるデータ量が .xlsx のほうが桁違いに大きいことがわかります。行の上限は 65,536 行に対して 1,048,576 行と約16倍、列も 256 列に対して 16,384 列と大きく差が開いています。この差が実際にどんな問題を生むのか、次の章から当サイトの実機の検証結果を順番に紹介していきます。まずは、この行・列の上限が本当かどうかの確認からです。
実機で確かめた、行と列の上限の違い
まず、上の表に書いた行・列の上限が本当かどうかを、当サイトの実機で確かめました。当サイトの実機(Excel 2019・バージョン 16.0.0.19127)で、.xls と .xlsx それぞれのブックを開き、シートの行数と列数を実際に取得したところ、次のような結果でした。
- .xls 形式のブック:65,536 行 × 256 列
- .xlsx 形式のブック:1,048,576 行 × 16,384 列
これはMicrosoftが公式に示している仕様表とも一致しており、裏取りができています。つまり、.xls では 65,536 行・256 列を超えるデータはそもそも置けないということです。日常の家計簿や名簿くらいなら問題になりませんが、注意したいのは業務の場面です。会計ソフトや販売管理システム、勤怠システムなどからデータを書き出すと、数万行にわたる明細がそのまま出てくることは珍しくありません。列についても、項目の多い商品マスタや顧客データでは、256列という上限が意外と近く感じられます。
こうしたデータを、うっかり .xls 形式で保存したり、古い形式のまま扱ったりすると、次の章で説明する「データが消える」問題に直結します。まずは「.xls には越えられない壁がある」という事実を、実機の数値として押さえておいてください。
行数の上限そのものについて詳しく知りたい方は、Excelの行数の上限とは(65,536行と1,048,576行の違い)もあわせてご覧ください。
【実機検証】.xls で保存すると上限を超えたデータは失われる(互換性チェックの警告を実機で確認)
ここがこの記事でいちばんお伝えしたい部分です。まず前提として、Microsoftの公式ページには「行列の上限の範囲外にあるセルのデータは、Excel 97-2003 形式では失われる」とはっきり明記されています。当サイトの独自の価値は、この公式に書かれた事実を実機で再現し、実際に消える様子と、保存時に出る警告ダイアログの画面まで撮影して確かめたことにあります。当サイトの実機(Excel 2019)で試したところ、.xlsx から .xls に保存し直すと、公式の説明どおり、.xls の上限を超えた場所にあったデータが失われることを確認しました。

具体的な手順はこうです。新しく作ったブックの「行70000・列300」の位置と、「行65536・列256」の位置の両方にデータを置きました。行70000・列300は .xls の上限(65,536行×256列)を超えた場所、行65536・列256はぎりぎり上限の内側にあたる場所です。これを .xls 形式で保存し、いったん閉じてから開き直しました。
その結果、シートは 65,536 行 × 256 列に縮んでおり、上限の内側に置いた行65536・列256のデータは残っていましたが、上限を超えた行70000・列300に置いたデータは完全に消えていました。実際にデータが使われている範囲(UsedRange)も $1:$65536 までに縮小していました。つまり、保存し直した時点で、上限からはみ出した部分は切り捨てられていたのです。
Microsoftの公式ページによると、97-2003形式(.xls)で保存すると互換性チェックが自動的に実行され、失われる可能性のある内容を警告すると説明されています。当サイトの実機でも、.xls を選んで保存しようとしたところ、実際にこの互換性チェックの警告ダイアログが表示され、その画面を撮影できました。ダイアログには次のような内容が表示されていました(当サイトの実機・Excel 2019で観測した文言です)。
機能の大幅な損失/このブックでは、選択したファイル形式で扱える行列数の範囲外にあるセルに、データが存在します。256 (IV) 列、65,536 行の範囲外にあるデータ…
このダイアログには「続行」「キャンセル」「新しいシートにコピー」のボタンが並んでいました。つまり、データが黙って消えるわけではなく、保存前にきちんと警告が出ます。ただし、この警告の内容を読まずに「続行」を押してそのまま保存すると、範囲外のデータは復元できない形で失われます。当サイトの実機でも、警告のあとに保存を進めた結果、前述のとおり上限を超えた部分のデータが実際に消えていました。
だからこそ、大量のデータを含むブックを .xls に変換するときは、保存時に表示される互換性チェックの警告を必ず読み、内容を確認してから進めてください。もし「機能の大幅な損失」といった警告が出たら、いったん保存を止め、データが 65,536 行 × 256 列に収まっているかを確かめるのが安全です。この一手間が、大切なデータを守ります。
【実機検証】同じ内容でも .xls のほうがファイルが大きい
「.xls のほうが古い形式だから軽いのでは」と思われがちですが、実際は逆です。当サイトの実機で、まったく同じ内容のブックを両方の形式で保存し、ファイルサイズをバイト単位で実測しました。

用意したのは、20,000 行 × 5 列のデータに数式とカラースケール(条件付き書式)を加えた、まったく同じ中身のブックです。この1つのブックを、.xlsx と .xls の両方の形式で保存し直して、それぞれのファイルサイズを比べました。結果は次のとおりです。
| 保存形式 | ファイルサイズ(バイト) | おおよその大きさ |
|---|---|---|
| .xlsx | 685,685 バイト |
約 669.6 KB |
| .xls | 1,931,264 バイト |
約 1,886.0 KB |
同じ中身なのに、.xls のほうが約2.82倍も大きいという結果になりました。「.xlsx は圧縮されているから小さい」ということは、一般によく言われます。ただし、同じ内容で実際にどれくらいの差がつくのかは、当サイトが実機でバイト単位まで測って確かめました。その実測値が、この約2.82倍です。同じ内容でも .xls に変換するとファイルがふくらむことを覚えておくと、実務で役立ちます。
この差は、メール添付のときにとくに効いてきます。メールには添付ファイルの容量制限があることが多く、同じ表でも .xls にしただけで制限に引っかかる、ということが起こりえます。クラウドストレージやチャットツールにアップロードするときも、軽いほうが速く、保存容量の節約にもなります。データが大きくなるほどこの差は広がるため、やり取りするファイルは .xlsx のほうが扱いやすいのです。なぜこれほど差がつくのか、その理由は次の「中身の構造」を見るとよくわかります。
【実機検証】.xlsx の正体はZIP+XML、.xls は旧バイナリ
ファイルサイズの差や、壊れにくさの理由を理解するために、両者の「中身の構造」を当サイトの実機で覗いてみました。ふだんは意識しない部分ですが、ここを知っておくと、なぜ .xlsx が選ばれているのかが腑に落ちます。

当サイトの実機で試したところ、.xlsx ファイルをZIP書庫として開くと、中には workbook.xml・sheet1.xml・sharedStrings.xml・styles.xml・[Content_Types].xml など、この検証ブックでは13個のXMLファイルが入っていました(この数はシート数や数式・書式の量によって増減します)。ファイルの先頭のバイトを見ると 50 4B 03 04、文字にすると「PK」で始まっており、これはZIP形式であることを示す目印です。つまり .xlsx の実体は、複数のXML文書をZIPで圧縮してひとつにまとめたものだったわけです。ブックの本体、シートの中身、文字列、書式などが、それぞれ別々のXMLとして整理されて入っています。
一方、.xls ファイルの先頭のバイトは D0 CF 11 E0 A1 B1 1A E1 となっており、これはOLE2複合ファイル(古いOfficeが使っていた「入れ物」の形式)の目印です。その入れ物の中に、BIFF8という古い記録形式でデータが収められています。ZIPではないため、そのまま解凍して中身を取り出すことはできません。データがひとかたまりのバイナリとして詰め込まれている、という違いがあります。この構造の違いが、次のような実用面の差につながっています。
- ファイルが小さくなる理由:.xlsx はテキスト(XML)をZIPで圧縮しているため、同じ内容でもファイルが軽くなります。前章の約2.82倍という差も、この圧縮の有無が大きな原因です。
- 壊れても救出しやすい理由:.xlsx はZIPとして開けば中のXMLを個別に取り出せるため、一部が壊れても残りのデータを救い出せる可能性があります。ひとかたまりの .xls よりも、部分的な救出がしやすい構造です。
「Excelファイルが開けなくなった」というトラブルのときに、.xlsx なら拡張子を .zip に変えてから中を開き、シートのXMLだけでも取り出せることがあります。もちろん確実な方法ではありませんが、こうした救出の余地があること自体が、.xlsx の安心感につながっています。
新しい関数・機能は .xls では保持しきれない
近年のExcelには、スピル(結果が自動的に隣のセルへ広がる仕組み)を使う新しい関数や、新しいグラフ、条件付き書式の細かな設定など、.xls が登場した時代には存在しなかった機能がたくさん追加されています。これらは .xlsx や .xlsm の仕組みを前提に作られているため、.xls 形式で保存すると、新しい機能が正しく保持されないことがあります。
たとえば、新しい関数で計算した結果が固定の値に置き換わってしまったり、対応していない書式が単純な表示に変換されてしまったりすることがあります。せっかく作り込んだ表が、.xls に変換したとたんに一部くずれてしまう、というのは避けたいところです。Excelは古い形式で保存する際に互換性チェックでこうした内容も警告しますが、警告に気づかず保存を進めると、元の状態には戻せません。新しい関数や書式を使ったブックは、.xls に変換せず .xlsx のまま扱うのが安全です。
マクロは .xlsx では保存できない、.xlsm が必要
「マクロ(自動処理のプログラム)を保存したはずなのに消えていた」というトラブルの多くは、この仕組みを知らないことが原因です。.xlsx 形式にはマクロを保存できません。セキュリティ上の理由から、マクロを含むブックは .xlsm(マクロ有効ブック)という別の形式で保存する必要があります。
この点はMicrosoftの公式の説明でも整理されています(公式は .xlsx について「VBA マクロのコードを保存できない」と明記しています)。マクロを含むブックを .xlsx で保存しようとすると、Excelはマクロが保存されない旨の警告(マクロを含まないブックとして保存するかを確認するメッセージ)を表示します。ここで気づかずにそのまま進めて保存すると、ブックは残ってもマクロだけが失われてしまいます。保存し直したときにマクロが動かなくなっていたら、この保存形式が原因である可能性が高いです。マクロを使っているブックは、次のどちらかの形式で保存してください。
- .xlsm(マクロ有効ブック):ふだんマクロを使うブックはこの形式で保存します。中身はZIP+XMLで .xlsx と同じ仕組みのため軽く、マクロも保持できます。
- .xls(古い形式):.xls でもマクロは保存できますが、前述のとおりデータ上限や新機能の制約があるため、いまはあえて選ぶ理由はほとんどありません。
つまり、マクロを使うなら .xlsm を選ぶのが現在の正解です。拡張子で見分けられるのもポイントで、.xlsx はマクロなし、.xlsm はマクロあり、と覚えておくと安心です。「保存したのにマクロが消えた」という場合は、保存時に .xlsx を選んでしまっていないか、まず確認してみてください。
マクロを有効にする具体的な手順は、Excelマクロを有効にする方法と拡張子「.xlsm」の重要性で詳しく解説しています。
互換性とやり取りの実務での違い
形式を選ぶときにもうひとつ気になるのが、「相手のExcelでちゃんと開けるか」という互換性の問題です。ここは誤解されやすいので整理しておきます。
結論から言えば、いま一般的に使われているExcel(2007以降)であれば、.xlsx も .xls もどちらも開けます。.xlsx は2007年以降の標準形式なので、相手が最近のExcelを使っているなら .xlsx で渡してまったく問題ありません。むしろ .xlsx のほうが、前の章までで見たとおりデータ量・ファイルサイズ・新機能のすべてで有利です。
一方で、ごくまれに「相手が2003以前の非常に古いExcelしか使えない」という場面があります。この場合だけは、相手が開けるように .xls で渡す必要が出てきます。ただしそのときも、この記事で説明したデータ消失や新機能の欠落に注意が必要です。実務での基本方針としては、こちらから渡すときは .xlsx、相手が明確に古い環境だと分かっているときだけ .xls、と覚えておけば迷いません。無料で使えるスマホやブラウザのExcel、他社の表計算ソフトの多くも .xlsx に対応しているため、汎用性の面でも .xlsx が有利です。
自分のファイルが .xls か .xlsx かを見分ける方法
変換や保存の話をする前に、「そもそも今扱っているファイルがどちらの形式なのか」を見分けられると安心です。見分ける方法はいくつかあります。
いちばん確実なのは、ファイルを開いた状態でExcelの上部のタイトルバーを見る方法です。.xls など古い形式で開いているときは、ファイル名の横に「互換モード」と表示されます。この表示があれば、そのファイルは古い .xls 形式だと判断できます。表示がなければ .xlsx などの新しい形式です。
ファイルを開かずに確認したいときは、フォルダーの中でファイルの拡張子を見る方法があります。Windowsのフォルダー(エクスプローラー)で「表示」から拡張子を表示する設定にしておくと、ファイル名の末尾が「.xls」なのか「.xlsx」なのかが一目でわかります。会社から配られたテンプレートや、長く使い回しているファイルは、気づかないうちに .xls のままになっていることがあります。大切なファイルほど、一度形式を確認しておくことをおすすめします。もし .xls だった場合は、次の手順で .xlsx に変換しておきましょう。
.xls を .xlsx に変換する手順
古い .xls ファイルを受け取ったときは、.xlsx に変換しておくと以降の作業がぐっと楽になります。上限が広がり、ファイルが軽くなり、新機能も使えるようになるためです。変換の方法は大きく2通りあり、どちらもExcelの標準機能だけで行えます。

ひとつめは「変換」ボタンを使う方法です。.xls ファイルを開くと、Excelは互換モードで開きます。ここで次の手順を行います。
- 変換したい .xls ファイルをExcelで開きます。
- 「ファイル」タブを開き、「情報」を選びます。
- 「変換」ボタンを選び、表示される案内に従って進めます。
- 元の .xls は .xlsx に置き換わり、最新の形式のブックとして扱えるようになります。
ふたつめは「名前を付けて保存」で形式を選ぶ方法です。元の .xls を残したまま、別ファイルとして .xlsx を作りたいときはこちらが向いています。
- 変換したい .xls ファイルをExcelで開きます。
- 「ファイル」タブから「名前を付けて保存」を選びます。
- ファイルの種類の一覧から「Excel ブック(*.xlsx)」を選びます。
- 保存先とファイル名を指定して保存します。
どちらの方法でも、変換後は 1,048,576 行 × 16,384 列まで扱えるようになり、新しい関数や機能もそのまま保存できるようになります。逆に、.xlsx を .xls に戻す方向の変換は、この記事で説明したデータ消失の危険があるため、よほどの理由がないかぎり避けてください。もし戻す必要があるときは、必ず変換前のファイルを別名でバックアップしてから作業しましょう。
大容量で軽くしたいなら .xlsb という選択肢も
ここまで .xls と .xlsx を中心に説明してきましたが、扱うデータがとても大きく、開くのに時間がかかって困っている場合には .xlsb(Excelバイナリブック)という形式もあります。.xlsb は .xlsx と同じ 1,048,576 行 × 16,384 列を扱えて、マクロも保存できるうえ、内部をバイナリで持つため大きなブックでも開閉や保存が速くなる傾向があります。
ただし .xlsb はバイナリ形式のため、.xlsx のようにZIPとして中身を取り出す救出はしにくく、ほかのソフトとのやり取りでも .xlsx ほど広くは対応していません。ふだんは .xlsx を使い、動作が重くて困る大きなブックのときだけ .xlsb を検討する、という使い分けがおすすめです。人に渡す前提のファイルは、汎用性を優先して .xlsx にしておくのが無難です。
どちらを使えばよいかの結論
ここまでの内容を、実際の判断に使える形でまとめます。迷ったときはこの順番で考えてください。
- 基本はすべて .xlsx で保存する。データ量が大きく、軽くて壊れにくく、新機能もそのまま使えるためです。
- マクロを使うブックは .xlsm で保存する。.xlsx ではマクロが保存できないためです。
- 古いExcel(2003以前)を使っている相手に渡す必要があるときだけ .xls を選ぶ。その際は上限超過データの消失に注意する。
- とても大きくて動作が重いブックは .xlsb も検討する。
言い換えれば、ほとんどの人はふだん .xlsx だけを使えば十分で、.xls はあくまで古い環境に合わせるための特別な選択肢だということです。当サイトの実機検証でも、同じ内容なら .xlsx のほうが小さく、扱えるデータも桁違いに大きく、そして .xls への変換にはデータ消失の危険があることがはっきりしました。手元のファイルが .xls になっている場合は、この機会に .xlsx へ変換しておくことをおすすめします。
よくある質問(FAQ)
古い .xls ファイルは今のExcelで開けますか
はい、開けます。Excel 2007以降でも .xls ファイルはそのまま開けますが、その際は機能が一部制限された「互換モード」で開きます。上限も 65,536 行 × 256 列のままになるため、大きなデータを追加したいときは先に .xlsx へ変換しておくと安心です。開いてすぐに編集を始める前に、まず形式を確認するくせをつけておくとよいでしょう。
.xls を開くと勝手に互換モードになるのはなぜですか
.xls は古い形式のため、Excelが「この形式のままでは新しい機能が使えません」という意味で互換モードにして開くためです。上部のタイトルバーに「互換モード」と表示されます。異常ではありませんので慌てる必要はありません。最新の機能を使いたい場合は、この記事で紹介した手順で .xlsx に変換してください。
.xls と .xlsx はどちらが安全ですか
ふだんのやり取りでは .xlsx のほうが安全です。当サイトの実機検証のとおり、.xlsx はZIP+XML構造のため一部が壊れても中身を救出しやすく、また扱えるデータ量も大きいためデータ消失のリスクが低いからです。ただしマクロ付きのブック(.xlsm や .xls)は、送受信時に信頼できる相手かどうかを確認し、心当たりのないファイルのマクロは有効にしないよう注意してください。
マクロが保存されないのですがどうすればいいですか
保存形式を .xlsm(マクロ有効ブック)に変えてください。.xlsx 形式ではマクロを保存できないため、「名前を付けて保存」でファイルの種類を「Excel マクロ有効ブック(*.xlsm)」に切り替えて保存します。すでにマクロが消えてしまったブックからは、残念ながらマクロだけを取り戻すことはできないため、元のマクロ付きファイルが手元にないか確認してみてください。
.xlsx から .xls に戻しても大丈夫ですか
データが 65,536 行 × 256 列に収まっており、新しい関数を使っていなければ大きな問題は起きにくいですが、注意が必要です。当サイトの実機では、上限を超えた場所のデータが警告のあとに消えることを確認しています。戻す前に、必ずデータが .xls の上限内に収まっているかを確認し、念のため変換前のファイルを別名で保存しておいてください。
.xls と .xlsx でファイルサイズはどのくらい違いますか
当サイトの実機で同じ内容のブックを両形式で保存したところ、.xlsx が約669.6KB(685,685バイト)、.xls が約1,886.0KB(1,931,264バイト)で、.xls のほうが約2.82倍大きくなりました。データ量が増えるほど差は広がります。メール添付やアップロードで容量が気になるときも、.xlsx のほうが有利です。
実機で確認したことと、この記事で扱っていないこと
当サイトの実機(Excel 2019・バージョン 16.0.0.19127)で確認したのは、次の4点です。①.xls と .xlsx の行・列の上限(65,536行×256列/1,048,576行×16,384列)、②同じ内容のブックを両形式で保存したときのファイルサイズ(.xlsx=685,685バイト/.xls=1,931,264バイト、.xls が約2.82倍)、③.xlsx がZIP+XML(先頭バイト「PK」)で .xls がOLE2複合ファイル(先頭バイト D0 CF 11 E0…)であること、④.xlsx を .xls で保存すると上限を超えたデータが失われ、その際に互換性チェックの警告ダイアログが表示されること。とくに④は、「上限外のデータは失われる」というMicrosoftが公式に明記している事実を、当サイトが実機で再現・実演し、実際の警告画面まで撮影して確かめたものです。この4点は当サイトの実機で実際に試して確かめた結果です。
一方で、変換手順の細かな画面表示や、マクロ保存時の警告文の正確な文言、新しい関数が .xls でどう変換されるかの細部、.xlsb の内部仕様などは、Excelのバージョンや環境によって表示や挙動が変わることがあります。これらについては当サイトですべてを実機で網羅したわけではなく、Microsoftの公式情報とあわせて確認してください。この記事では、出所をそのつど区別して記載しています。公式の説明や一般によく言われることは、その旨を明示しました。当サイトが実際に確認した内容とは、はっきり分けて書いています。
.xls と .xlsx の違いや変換でつまずいてしまったとき、「古いファイルをどう扱えばいいか分からない」「マクロが消えて困っている」といったお悩みは、当サイトの公式LINEから無料でご相談いただけます。あなたの手元のファイルの状況に合わせて、安全な保存形式と手順を一緒に確認していきましょう。公式LINE(無料相談)
出典・引用サイト
- Excel specifications and limits(Microsoft サポート)
- File formats that are supported in Excel(Microsoft サポート)
- Use Excel with earlier versions of Excel(Microsoft サポート)
この記事の内容の出所をはっきりさせておきます。読者の方が安心して参考にできるよう、当サイトで実際に確認したことと、公式情報にもとづいて整理したことを分けて記載します。
最終確認日 2026-07-23/記事作成 uri uri


コメント