Office(オフィス)付きパソコンなら格安中古のPC STORE

2025.10.21

【全自動】Excelで2つのシートや表を比較して“差分”を抽出する方法4選|関数と条件付き書式で変更箇所に色を付ける最速テク

Officeのお役立ち情報

記事の最終更新日:2025年9月26日

質問するスト子
スト子

ピー太さん、Excelのデータ照合で目が限界です…。先月の商品リストと今月の新しいリストの2つがあるのですが、どこがどう変わったのか違いを見つけなければなりません。

価格が変更された商品もあれば、新しく追加された商品、そして廃盤になった商品もあります。2つのシートを並べて目で一つずつ見比べているのですが、行数も多くて必ずどこか見落としてしまうんです。

Excelにこの2つの表を丸ごと読み込ませて、「違う部分だけ色を付けて!」みたいに自動で差分を抽出してくれるような神機能はないのでしょうか?

解説するピー太
ピー太

その人間離れした集中力を要求される「間違い探し」ゲーム、Excel業務の中でも特に過酷なものの一つですよね。スト子さん、もうその苦行から解放される時が来ました。

おっしゃる通り、Excelにはその退屈でミスを誘発する作業を完全に自動化するための強力な「デジタル探偵団」が備わっています。簡単な調査なら「ジャンプ機能」という敏腕刑事が瞬時に解決してくれます。

そして、より複雑な捜査には、「**条件付き書式**」と「**関数**」を組み合わせた科学捜査班が、変更箇所をミリ秒単位で特定し証拠(色付け)を残してくれます。さらに、最新のExcelなら「**FILTER関数**」というエリート部隊が、差分のあるデータだけを別の場所にリストアップする「差分レポート」まで自動で作成してくれるのです。

この記事では、その4つの異なる捜査手法を簡単なものから順番に解説していきます。

比較の哲学:それは「目」で探すのではなく、「ルール」であぶり出すこと

2つのリストや表を人間の目で比較するという行為は、本質的に限界とエラーを内包しています。私たちの集中力は有限であり、注意力にはムラがあります。Excelにおけるプロフェッショナルなデータ照合の基本思想は、この人間の不完全性を完全に排除し、全ての作業をコンピューターの得意な厳密で客観的な「**ルールの適用**」へと置き換えることにあります。

「この商品コードは、もう一方のリストに存在するか?」「もし存在するなら、その価格は同じか?」私たちは、このような明確な「問い(ルール)」をExcelに与えるだけです。あとはExcelがその問いを何千、何万行のデータに対して一瞬で投げかけ、ルールに合致した(あるいは合致しなかった)セルを私たちに報告してくれます。これは単なる時短テクニックではありません。それは、ヒューマンエラーという最大のリスクを排除し、あなたの仕事の「正確性」と「信頼性」を100%に近づけるための科学的なアプローチなのです。


第一章:4つの捜査手法 - あなたのレベルと目的に合わせた最適解

ここでは、全く同じ構造を持つ「旧商品リスト」と「新商品リスト」を例に話を進めます。新リストでは、一部の商品の価格が「変更」され、新しい商品が「追加」され、古い商品が「削除」されています。

手法①【初級編】:ジャンプ機能で「値が違うセル」を一瞬で見つけ出す

2つのシートの同じ位置、同じ範囲にあるデータの中身だけが違うというケースを見つける最速の方法です。

【手順】

  1. 旧リストのデータ範囲(例:`A2:C10`)を選択します。
  2. `Ctrl`キーを押しながら、新リストの全く同じデータ範囲(例:`A2:C10`)を選択します。
  3. `Ctrl + G`キーで「ジャンプ」ダイアログを開き、左下の「セル選択」をクリックします。
  4. 表示された選択オプションの中から「**行方向の相違**」を選択し、「OK」をクリックします。

するとExcelは、現在アクティブになっているシートの中で、もう一方のシートの同じ位置のセルと値が異なるセルだけを全て選択状態にします。あとはその選択状態のまま、セルの背景色を黄色に塗りつぶせば変更箇所は一目瞭然です。

【長所と短所】
操作が非常に簡単で速い。しかし、行や列の構成が完全に一致している必要があり、追加・削除された行を見つけることはできません。

手法②【中級編】:条件付き書式と`COUNTIF`で「追加・削除された行」をあぶり出す

リストに追加された項目やリストから削除された項目をハイライトするための、古典的で強力な手法です。

【手順:削除された行の特定】

  1. 旧リストの商品コードの列(例:`A2:A10`)を全て選択します。
  2. 「ホーム」タブ > 「条件付き書式」>「新しいルール」>「数式を利用して…」を選択します。
  3. 以下の数式を入力します。(`Sheet2!$A:$A`は新リストの商品コード列を指します)

    =COUNTIF(Sheet2!$A:$A, $A2)=0

    この数式は、「もしこのセル(`$A2`)の値が、新リストのA列の中に一つも(`=0`)存在しないなら」という条件を意味します。つまり、新リストで消えてしまった行だけがハイライトされます。

【手順:追加された行の特定】
今度は新リストの商品コード列を選択し、同様に条件付き書式で以下の数式を設定します。

=COUNTIF(Sheet1!$A:$A, $A2)=0

手法③【中級編】:条件付き書式と`VLOOKUP`で「内容が変更されたセル」をハイライトする

商品コードは同じなのに価格だけが変更された、といった行内部の変更を見つけ出すためのテクニックです。

【手順】

  1. 新リストの価格の列(例:`B2:B11`)を全て選択します。
  2. 条件付き書式で以下の数式を入力します。(`Sheet1!$A:$B`は旧リストの商品コードと価格の範囲を指します)

    =B2<>VLOOKUP(A2, Sheet1!$A:$B, 2, FALSE)

    この数式は、まず`VLOOKUP`関数を使い新リストの商品コード(`A2`)をキーにして旧リストから古い価格を探し出します。そして、その古い価格と新リストの価格(`B2`)が`<>`(等しくない)かどうかを判定します。価格が変更されたセルだけがハイライトされます。

手法④【上級編】:`FILTER`関数で「差分レポート」を全自動作成する

ここからがMicrosoft 365やExcel 2021以降で使える、モダンExcelの真骨頂です。セルに色を付けるだけでなく、差分のあるデータだけを別の場所にリストとして自動的に抽出します。

【追加された行の抽出】

=FILTER(Sheet2!A2:C11, COUNTIF(Sheet1!A2:A10, Sheet2!A2:A11)=0)

この数式は、新リストの中からその商品コードが旧リストに存在しない(`COUNTIF`の結果が0になる)行だけを`FILTER`(抽出)します。

【削除された行の抽出】

=FILTER(Sheet1!A2:C10, COUNTIF(Sheet2!A2:A11, Sheet1!A2:A10)=0)

【価格が変更された行の抽出】

=FILTER(Sheet2!A2:C11, XLOOKUP(Sheet2!A2:A11, Sheet1!A2:A10, Sheet1!B2:B10) <> Sheet2!B2:B11)

`XLOOKUP`で旧リストの価格を参照し、それが新リストの価格と異なる行だけを`FILTER`で抽出しています。これらの数式を一度入力しておけば、元のデータが変更されても差分レポートは常に最新の状態に自動で更新され続けます。

まとめ:Excelの比較作業は、あなたの「論理的思考」を試すパズルである

Excelの2つの表の違いを見つけるという作業は、もはや根性で乗り切る単純作業ではありません。お客様がどのような「違い」を見つけたいのか、その目的に応じて最適な「関数」と「機能」を戦略的に選択し組み合わせる、知的なパズルです。

  1. 「全く同じ表」の値の違いなら「ジャンプ機能」が最速: `Ctrl + G`から「行方向の相違」。単純な値の比較に特化した電光石火の技。
  2. 「追加」と「削除」をあぶり出すなら「COUNTIF」+条件付き書式: 一方のリストにしか存在しない項目を見つけ出すための、古典的で最も信頼できる手法。
  3. 「変更」された値を見抜くなら「VLOOKUP」+条件付き書式: キーは同じだが中身が違う。そんな巧妙な変化を見逃さない探偵の眼。
  4. 「差分レポート」の全自動化なら「FILTER」関数: 動的配列時代の最終兵器。ハイライトするだけでなく、差分そのものを新しい表として抽出する究極のソリューション。

これらのテクニックをマスターすれば、お客様はもはやデータ照合という退屈な作業に貴重な時間を奪われることはありません。Excelという名の強力な探偵を味方につけ、データの海に潜む全ての「真実」を一瞬で見つけ出してください。

パソコン購入のためのお役立ち情報

パソコン選びがよく分からない方、ご不安のある方、悩む前に!お気軽にご相談ください!

専門スタッフが、性能・ご予算・お好みなどご希望に合ったパソコンをお探しします!

PC STOREへ