Excelを使っていると、「2つのシートやファイルの内容が一致しているか確認したい」「どこが変わったのか差分を見つけたい」という場面に出くわすことは多いのではないでしょうか。
手作業で目視確認するのは時間がかかる上、見落としのリスクも高くなります。
そこで今回は、Excelで差分比較をする方法について、関数・ツール・色付けなどさまざまなアプローチからわかりやすく解説していきます。
初心者の方でも実践できる内容をそろえていますので、ぜひ最後までご覧ください。
【Excel】エクセルで差分比較する方法(シート・関数・ツール・差分抽出・色付け・チェック)
それではまず、Excelで差分比較をする方法の全体像と結論から解説していきます。
Excelで2つのデータを比較して差分を見つけるには、「関数を使う方法」「条件付き書式で色付けする方法」「専用ツールを使う方法」の3つのアプローチが代表的です。
どの方法が最適かは、比較するデータの規模や目的によって異なります。
少量のデータであれば関数が手軽でおすすめですが、大量のデータや複数シートにわたる比較には条件付き書式やツールの活用が効果的でしょう。
差分比較の3大アプローチ
①関数(IF・EXACT・COUNTIFなど)を使ってセルごとに差分を検出する
②条件付き書式を使って差分セルを自動で色付けして視覚化する
③ExcelのSpreadsheet Inquireや外部ツールを使って高精度に比較する
これらを組み合わせることで、ミスのない差分チェックが実現できます。
それぞれの方法を順番に詳しく見ていきましょう。
Excelで差分比較に使える関数の種類と使い方
続いては、Excelの関数を使った差分比較の方法を確認していきます。
関数を使った差分抽出は、セル単位での一致・不一致を自動で判定できるのが大きなメリットです。
代表的な関数をいくつかご紹介します。
IF関数で一致・不一致を判定する
最もシンプルな方法がIF関数を使った比較です。
2つのセルの値が同じかどうかをチェックし、結果に応じて任意のテキストを表示させることができます。
使用例
=IF(A1=B1,”一致”,”不一致”)
A1とB1の値が同じであれば「一致」、異なれば「不一致」と表示されます。
複数のセルに対して一気に適用したい場合は、数式を下方向にコピーするだけでOKです。
シート間の比較にも使えるので、汎用性が高い方法といえるでしょう。
EXACT関数で大文字・小文字を区別して比較する
IF関数による「=」での比較は、大文字と小文字を区別しません。
英語のデータを比較する際などに正確な差分抽出をしたい場合は、EXACT関数を使うのがおすすめです。
使用例
=EXACT(A1,B1)
2つのセルの値が完全に一致していればTRUE、異なればFALSEを返します。
大文字・小文字も厳密に区別して比較されます。
「Apple」と「apple」を区別したいケースでは、IF関数では判定できないため、EXACT関数を使うようにしましょう。
COUNTIF関数でリスト間の差分を見つける
2つのリストを比べて、片方にしかない値を見つけたい場合はCOUNTIF関数が便利です。
使用例
=COUNTIF($B$1:$B$10,A1)
A1の値がB列のリストに存在するかを確認できます。
結果が0であれば、B列に該当の値が存在しないことを意味します。
COUNTIF関数は差分抽出だけでなく、重複チェックにも応用できるため、データ管理の場面で非常に役立つでしょう。
条件付き書式を使ってExcelで差分を色付けする方法
続いては、条件付き書式を活用した差分の色付け・視覚化の方法を確認していきます。
関数で差分を検出するのも有効ですが、色でひと目に差分を確認できる条件付き書式はさらに直感的でわかりやすい方法です。
特に大量のデータを扱う場合に効果を発揮します。
条件付き書式の基本設定手順
条件付き書式を使って差分を色付けする基本的な手順は以下のとおりです。
| 手順 | 操作内容 |
|---|---|
| ① | 比較したいセル範囲を選択する |
| ② | 「ホーム」タブの「条件付き書式」をクリック |
| ③ | 「新しいルール」を選択する |
| ④ | 「数式を使用して、書式設定するセルを決定」を選択 |
| ⑤ | 差分を判定する数式を入力し、色を設定する |
手順⑤で入力する数式の例としては、「=A1<>B1」のように不一致を条件にすることで、異なるセルに自動で色が付くよう設定できます。
シート間の差分を色付けで比較する方法
別シートのデータと比較したい場合は、数式内でシート名を指定することで対応できます。
シート間比較の数式例
=A1<>Sheet2!A1
現在のシートのA1と、Sheet2のA1が異なる場合に書式が適用されます。
シート名が日本語の場合は「=A1<>’比較シート’!A1」のようにシングルクォートで囲みます。
この方法を使えば、改訂前と改訂後のシートを並べて比較するような作業がスムーズになるでしょう。
重複しない一意の値に色付けしてリスト差分を確認する
2つのリスト間で差分を視覚化したい場合は、条件付き書式の「一意の値」オプションも活用できます。
「ホーム」→「条件付き書式」→「セルの強調表示ルール」→「重複する値」を選び、表示を「一意」に切り替えることで、どちらのリストにしか存在しない値を自動でハイライト表示できます。
関数を使わずに視覚的に差分を把握できる点が、この方法の大きな強みです。
Excelの差分比較に使えるツール・機能を活用する方法
続いては、Excelに搭載されているツールや外部ツールを活用した差分比較の方法を確認していきます。
関数や条件付き書式だけでは対応が難しいファイル全体・ブック全体の比較には、専用の機能やツールが力を発揮します。
Spreadsheet Inquire(スプレッドシート照会)を使う方法
ExcelにはOffice Professional Plusのライセンスが必要ですが、「Spreadsheet Inquire」という強力なアドインが用意されています。
このツールを使えば、2つのブック(ファイル)を丸ごと比較し、どのセルに変更があったかを詳細にレポートとして出力できます。
Spreadsheet Inquireの主な機能
・ブック間の差分比較(セルの値・数式・書式の違いを検出)
・変更箇所のレポート出力
・シート間の関係性を可視化するダイアグラム表示
・数式の問題箇所の特定
使い方は「ファイル」→「オプション」→「アドイン」からInquireを有効化し、「照会」タブから「ブックの比較」を選択するだけです。
大規模なデータを扱うビジネスシーンでは特に重宝するツールでしょう。
WinMergeなど外部ツールで差分比較する方法
Excelのファイル自体をテキストレベルで比較したい場合は、WinMergeなどの無料の外部差分比較ツールを利用する方法もあります。
ただし、Excelファイル(.xlsx)はそのままでは比較しにくいため、CSVに変換してから比較する運用が一般的です。
| ツール名 | 特徴 | 費用 |
|---|---|---|
| WinMerge | テキスト・フォルダの差分比較が得意。CSV比較にも利用可能 | 無料 |
| Spreadsheet Inquire | Excelブック同士を直接比較。Office付属アドイン | Office Pro Plusが必要 |
| Beyond Compare | 多機能な差分比較ツール。Excelファイルにも対応 | 有料(試用版あり) |
目的や環境に合わせて最適なツールを選ぶことが、効率的な差分チェックへの近道です。
VBA(マクロ)を使って差分を自動チェックする方法
より高度なカスタマイズが必要な場合は、VBAマクロを使って差分比較を自動化する方法もあります。
たとえば、2つのシートのセルを順番に比較し、差分が見つかった場合に色を付けたり、別シートに差分内容を書き出したりする処理を自動で実行させることが可能です。
VBAによる差分色付けの基本的な考え方
For Each セル In 比較範囲
If セル.Value <> 対応セル.Value Then
セル.Interior.Color = RGB(255, 0, 0) ‘赤色で色付け
End If
Next セル
VBAは習得に多少の学習コストがかかりますが、一度作成しておけば繰り返し使える強力な差分チェックツールになるでしょう。
まとめ
今回は「【Excel】エクセルで差分比較する方法(シート・関数・ツール・差分抽出・色付け・チェック)」について解説してきました。
Excelでの差分比較には、IF関数・EXACT関数・COUNTIF関数などの関数を使う方法、条件付き書式で色付けして視覚化する方法、Spreadsheet InquireやWinMergeなどのツールを活用する方法など、さまざまなアプローチがあります。
少量のデータには関数、視覚的に確認したい場合は条件付き書式、ファイル全体を比較したい場合はツールと、目的に応じて使い分けることが大切です。
今回ご紹介した方法を参考に、Excelでの差分チェック作業をより効率的に進めていただければ幸いです。