# Excel Compare

> エクセルファイルを2つ比較して変わったセルを一覧に。値・数式・型の差分を別々に表示し、行はキー列・自動・位置で対応付け。アップロードなしでブラウザ内完結。

- URL: https://bytescope.dev/ja/excel-compare/
- Locale: ja · Also: [en](https://bytescope.dev/en/excel-compare.md) · [zh-Hant](https://bytescope.dev/zh-Hant/excel-compare.md)
- Runs: 2 つのブックはお使いのパソコン上の worker で読み込み・比較します。アップロードはせず、セルの値もシート名もファイル名もどこにも送りません。
- Requires: Any modern browser (Chrome, Edge, Firefox, Safari), desktop and mobile.
- Updated: 2026-09-08

## What it does

同じ報告書の「最終版」と「本当の最終版」、同じ台帳を2回書き出したもの、同僚から戻ってきたシート——知りたいのは「結局どこが変わったのか」です。`.xlsx` か `.xlsm` を2つドロップすると、ページの中で開いて比較します。シートは名前で対応付け（名前が合わなければ順番で対応付け、手動で付け替えも可能）、非表示シートも隠しシートも対象です。結果は左右に並べたグリッドに差分を色と記号で表示し、シートごとに「同じセル／違うセル／追加行／削除行／数式の変更数」を集計。差分だけを表示する絞り込みと、前後の差分へのジャンプも付いています。差分一覧は CSV（`sheet, cell, kind, a_value, b_value, a_formula, b_formula`）で保存するか、JSON としてコピーできます。

どちらのファイルもブラウザから出ません。台帳、給与表、価格表は、見知らぬサーバーに置きたくないものの代表格です。だから2つのブックはディスクから読み込み、あなたのマシン上の Web Worker の中で展開して比較します。アップロード先はそもそも存在せず、ページが送るのは「比較を実行した・成功したか・どの対応付けモードだったか」だけ。ファイル名もシート名もセルの値も含まれません。

### 値・数式・型を別々に表示

対応付いたセルは3つの観点で比べ、それぞれ別の記号を付けます。値はファイルに保存されたキャッシュ値（共有文字列は解決済み）。数式は `<f>` のテキストで、共有数式は展開してからセルごとの実際の数式を比べます。型は数値・文字列・ブール・エラーの4種類で、文字列の `100` と数値の `100` は「一致」ではなく「型の変更」です。いちばん見逃したくないのは「値は同じなのに数式が消えた、または変わった」セル。数式の上に結果の数字を貼り付けたときの典型的な痕跡で、今日は同じに見えても明日から更新されなくなります。グリッドではこれを「数式のみ変更」として独立した記号で示すので、何千もの同一セルの中に埋もれません。数値は数値として比較（`1.0` と `1` は同じ）、表示テキストで比較する切り替えと、初期値 0 の許容誤差も用意しています。日付は内部的には「日付書式の付いた数値」なので、シリアル値で比較して日付として表示します。ただの数値から日付書式に変わったセルは、値の変更ではなく表示形式の変更として報告されます。

### 行の対応付けは3通り

1行挿入しただけで、それ以降の行が全部「違う」と報告される——表計算の比較ツールがいちばん嫌われる場面です。そこで対応付けのモードは自分で選ぶ形にし、結果の先頭に今どのモードかを必ず表示します。キー列（推奨）は、注文番号や ID、SKU などあなたが選んだ1列以上をキーにして行を対応付け、結果を「両方にあるが内容が違う」「A にだけある」「B にだけある」「キーが重複」の4つに分けます。自動は各行をハッシュにして行の並びに Myers 差分をかけ、挿入・削除された行を見つけてから、対応した行どうしをセル単位で比べます。位置は N 行目と N 行目をそのまま比べる方式で、レイアウトが固定された帳票向きです。列は見出し行（最初の空でない行、または指定した行）のテキストで対応付け、見出しが合わない列は位置で対応付けます。自動対応付けは推測です。ほとんどの行が変わっているシートでは組み合わせを間違えることがあり、15 秒の時間予算と差分数の上限を超えると、黙って位置対応付けに切り替えるのではなく、処理を止めてキー列か位置モードへの切り替えを提案します。

### 比べるもの、比べないもの

比較に使うのはファイルに保存されたキャッシュ値で、再計算はしません。手動計算で保存されたブック、「開くときに再計算」のフラグが立ったブック、キャッシュ値を持たない数式セルがあるブックは古い数値を抱えている可能性があり、検出したときはページに警告を出します。数値は有効数字 15 桁まで一致すれば同じとみなします。Excel 自身が保持するのも 15 桁で、ソフトによって同じ値を 15 桁で書くか 17 桁で書くかが違うため、末尾の桁は変更ではなくノイズだからです。フォント、色、罫線、条件付き書式、データの入力規則、グラフ、ピボットテーブル、マクロ、コメントは比較しません。書式のうち報告するのは「表示形式の違い」と「結合セル範囲の違い」の2つだけです。暗号化されたブックと旧形式の `.xls` は、理由を示したうえで受け付けません。

## Limits

Does not recalculate formulas (it compares the values stored in the file), does not compare fonts, colours, borders, conditional formatting, charts, pivot tables, macros or comments, does not open legacy .xls or encrypted files, and does not write a merged workbook — it reports the differences.

## FAQ

### Excel ファイルは比較のためにアップロードされますか？

いいえ。2つのブックはディスクから読み込み、ページ内の Web Worker で展開・解析・比較します。処理を行うサーバーはなく、タブを閉じればどちらのファイルのコピーも残りません。匿名の利用イベントに記録されるのは「比較を実行した・成功したか・どの対応付けモードか」だけです。

### 途中に1行挿入しただけなのに、それ以降の行が全部「変更」にならないのはなぜ？

比較の前に行を対応付けているからです。自動モードでは各行をハッシュにして Myers 差分で挿入・削除行を見つけるので、挿入より下の行は本来の相手と組になります。キー列モードなら、あなたが選んだキーで組を決めるのでさらに確実です。N 行目と N 行目をそのまま比べるのは位置モードだけ。レイアウトが固定の帳票に使い、リストには使わないでください。

### 「数式のみ変更」とはどういう意味ですか？

キャッシュ値は両方のファイルで同じなのに、数式が違うセルです。片方が `=SUM(B2:B9)` で、もう片方がその数式がかつて出した数字になっているケースがほとんどです。今日は同じに見えて、明日から静かに更新が止まる——だから「変更なし」に紛れ込ませず、専用の記号を付けています。

### 両方とも 100 と表示されているセルが「違う」と出るのはなぜ？

たいていは型が違うからです。片方は文字列の `100`、もう片方は数値の `100`、あるいは片方がブール値でもう片方が文字列の `TRUE`。グリッド上は同じに見えても、合計や検索では別物として振る舞います。同じ扱いにしたいときは「表示テキストで比較」をオンにしてください。

### 別々のソフトで保存した2つのファイルで、ほぼすべての数値に差分が付きます。

まず許容誤差と 15 桁ルールを確認してください。有効数字 15 桁まで一致する数値はすでに同じとみなしており、ソフトごとに生じる 16〜17 桁目のノイズはこれで吸収されます。それでも差が残るなら、片方のファイルが古いキャッシュ値を抱えている可能性があります。手動計算で保存されている、「開くときに再計算」のフラグがある、キャッシュ値のない数式セルがある——いずれかを検出するとページが警告します。

### 自動対応付けが止まって、別のモードを選ぶよう言われました。なぜ？

自動対応付けは行の並びに Myers 差分をかけるため、コストは差分の数に比例して増えます。2つのシートの違いが多すぎるか、15 秒の時間予算を使い切ると、当て推量の結果を返したり黙って位置対応付けに切り替えたりせず、処理を止めます。キーになる列があればキー列モード（速くて正確）、レイアウトが固定なら位置モードを選んでください。

### 書式やグラフ、マクロも比較しますか？

いいえ。フォント、塗りつぶし、罫線、条件付き書式、データの入力規則、グラフ、ピボットテーブル、コメント、VBA は今回のバージョンでは対象外です。書式の違いとして報告するのは「表示形式の変更」と「結合セル範囲の変更」だけ。`.xlsm` は問題なく開けますが、マクロは比較に含まれません。

### 非表示シートも含まれるのはなぜ？

変わった前提条件は、たいてい非表示シートに隠れているからです。非表示（hidden）も隠し（veryHidden）も通常のシートと同じように比較し、非表示フラグ自体の変化も報告します。片方では見えていて、もう片方ではしまい込まれたシートが見逃されることはありません。

## Related tools

- [Word Compare](https://bytescope.dev/ja/word-compare.md) — 2 つの Word 文書を段落単位・単語単位で比較します。
- [CSV Explorer](https://bytescope.dev/ja/csv-explorer.md) — 大きな CSV を並べ替え・絞り込みできる表で開き、SQL で検索できます。
- [Office Document Inspector](https://bytescope.dev/ja/office-inspector.md) — セル以外に何が入っているかを確認：作成者、非表示シート、ファイルパス。
