2 つの列を比較してExcel で重複データを検索(完全ガイド)
Excel で2 つの列にまたがる重複する値を特定するのは、データ分析においてごく一般的な作業です。これにより、データ入力ミスや重複レコードを簡単に見つけ出し、効果的なデータクレンジングが可能になります。本記事では、2 つの列間で重複または一致する値を、より効率的かつ正確に特定する方法をご紹介します。

2 つの列を比較して重複する値を検出
2 つの列間で重複する値を検出するには、視覚的に把握しやすいように強調表示する方法や、詳細分析のために抽出する方法など、目的に応じたさまざまな手法があります。本セクションでは、Excel でこのタスクを簡単に達成できるテクニックをいくつかご紹介します。
2 つの列で条件付き書式を使用するを使って重複を強調表示
Excel で2 つの列にまたがる重複を強調表示するのは、特に手動での確認が困難な大規模データセットにおいて、重複データを効率的に特定するための優れた方法です。こうした課題には、条件付き書式機能がぴったりの解決策となります。
手順1:重複を強調表示したい列のデータを選択します
この例では、A2:A10 を選択します(下記のスクリーンショットを参照)。
手順2:条件付き書式を使用する機能を適用します
- 「ホーム」>「条件付き書式を使用する」>「新しいルール」をクリックしてください(下記スクリーンショットをご参照ください)。

- 「新しい書式設定のルール」ダイアログボックスで、次の操作を行ってください:
- 2.1「ルールの種類の選択」リストボックスで、「数式を使用して書式設定するセルを決定する」を選択してください。
- 2.2「次の数式を満たす値の書式設定」テキストボックスに、以下の数式を入力してください。
=COUNTIF($B$2:$B$10, A2)>0 - 注:上記の数式において、「B2:B10」は比較対象のデータリストを、「A2」は重複をハイライトしたい列の先頭セルを表します。この数式は、セル A2 の値が列 B 内に存在するかどうかをチェックします。ご自身のデータに合わせてセル参照を適宜修正してください。
- 2.3 次に、「書式設定」ボタンをクリックしてください。

- 表示された「セルの書式設定」ダイアログボックスで、重複するアイテムを強調表示する色を指定し、「OK」をクリックしてください。

- 「新しい書式設定のルール」ダイアログボックスに戻ったら、「OK」ボタンをクリックしてください。
結果:
これで、列 A と列 B の両方に存在する重複値が、下記スクリーンショットのように列 A 内でハイライトされました。
- 「条件付き書式を使用する」内の重複ルールでは、大文字と小文字は区別されません。そのため、「Apple」と「apple」の両方が重複としてマークされます。
- 列 B の重複をハイライトしたい場合は、まず列 B を選択し、次に「条件付き書式」で以下の数式を適用してください。
=COUNTIF($A$2:$A$10, B2)>0
2 つの列で重複を選択して強調表示 — 強力なツール「Kutools」を使用
場合によっては、強調表示にとどまらず、重複するセルを選択してワークブック内の別の場所にコピー&ペーストしたいこともあるでしょう。「Kutools for Excel」の「同じ/異なるセルを選択」機能は、まさにこうしたシーンに最適です。この機能を使えば、重複値や一意の値を簡単に識別でき、必要なセルを瞬時に強調表示・選択できます。
「Kutools」>「選択」>「同じ/異なるセルを選択」をクリックします。「同じ/異なるセルを選択」ダイアログボックスで、以下の操作を行ってください:
- 「値の検索元」ボックスと「基準」ボックスで、それぞれ検索対象データと比較対象データを指定してください。
- 「基準」セクションで「各行ごと」を選択してください。
- 「検索」セクションで「同じ値」を選択してください。
- 「選択結果の処理」セクションで、重複する値を強調表示する背景色を指定します。
- 最後に、「OK」ボタンをクリックしてください。

結果:
これで、列 A と列 B の両方に存在する重複値が列 A 内で強調表示され、選択されました。あとは任意のセルにコピー&ペーストするだけです(下記スクリーンショットをご参照ください)。
- この機能は、「同じ/異なるセルを選択」ダイアログで「大文字と小文字を区別」チェックボックスがオンの場合、大文字と小文字を区別して比較します。
- 列 B の重複を選択したい場合は、「同じ/異なるセルを選択」ダイアログボックスで、「次の範囲で値を検索」および「基準」の各ボックスに指定されている2 つの列を入れ替えるだけで済みます。
- この機能をご利用になるには、Kutools for Excel をダウンロードしてインストールしてください。
数式を使って2 つの列で重複を検出して抽出
2 つの列間で重複を検出して抽出するには、数式を使って重複を簡単に特定・抽出できます。
結果を表示したい空のセルに以下の数式をコピー&ペーストし、フィルハンドルを下にドラッグして他のセルにも適用してください。
=IF(ISERROR(MATCH(A2,$B$2:$B$10,0)),"",A2)
注: 上記の数式において、「A2」は重複を検索したい列の先頭セルを示し、「B2:B10」は比較対象となるデータリストを表します。
結果:
ご覧のとおり、列 A のデータが列 B に存在する場合はその値が表示され、存在しない場合はセルは空白のままになります。
VBA コードを使用して2 つの列で重複を選択を行う
このセクションでは、2 つの列に含まれる重複する値を特定し、選択するための VBA コードを作成する手順を説明します。
手順1: VBA モジュールエディターを開き、コードをコピーする
- 「Alt + F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開きましょう。
- 開いたウィンドウで、「挿入」>「モジュール」をクリックし、新しい空のモジュールを作成してください。
- 次に、以下のコードを空のモジュールにコピー&ペーストしてください。VBA コード:2 つの列間の重複する値を検出して選択
Sub Compare() 'Update by Extendoffice Dim Range1 As Range, Range2 As Range, Rng1 As Range, Rng2 As Range, outRng As Range xTitleId = "KutoolsforExcel" On Error Resume Next Set Range1 = Application.Selection Set Range1 = Application.InputBox("Range1 :", xTitleId, Range1.Address, Type:=8) Set Range2 = Application.InputBox("Range2:", xTitleId, Type:=8) Application.ScreenUpdating = False For Each Rng1 In Range1 xValue = Rng1.Value For Each Rng2 In Range2 If xValue = Rng2.Value Then If outRng Is Nothing Then Set outRng = Rng1 Else Set outRng = Application.Union(outRng, Rng1) End If End If Next Next outRng.Select Application.ScreenUpdating = True End Sub
手順2: この VBA コードを実行する
- このコードを貼り付けたら、「F5」キーを押して実行してください。最初のプロンプトボックスで、重複をチェックする元となるデータリストを選択し、「OK」をクリックします。

- 2 番目のプロンプトボックスで、比較対象のデータリストを選択し、「OK」をクリックしてください(下記スクリーンショット参照)。

結果:
これにより、列 A と列 B で重複する値が列 A 内から選択されるため、必要に応じてセルに色を付けたり、コピー&ペーストしたりできます。
- この VBA コードは「大文字と小文字を区別」します。
- 列 B の重複を選択したい場合は、データの選択範囲を指定する際に、選択中の2 つの列を入れ替えるだけで OK です。
2 つの列を行単位で一致を比較
Excel では、レコードの照合やデータ傾向の分析など、さまざまな作業で2 つの列を各行ごとに比較し、一致するかどうかを確認することがよくあります。Excel には、簡単な数式から専用機能まで、多彩な比較方法が用意されており、データの要件に最適な手法を柔軟に選べます。ここでは、こうした作業を効果的にこなすためのシンプルで実用的な方法をいくつかご紹介します。
同じ行にある2 つの列を数式で比較
Excel の数式を使えば、列間のデータ比較が簡単かつ強力に実行できます。以下にその使い方をご紹介します。列 A と列 B にデータがあると仮定し、これら2 つの列のデータが一致するかどうかを確認したい場合、次の数式が役立ちます。
- 「等号演算子(=)の使用」:2 つのセルを比較する最もシンプルな方法
- 「IF 関数」:比較結果をよりわかりやすくする方法
- 「EXACT 関数」:大文字と小文字を区別する比較
等号演算子(=)の使用:
以下の数式を入力またはコピーし、「Enter」キーを押した後、フィルハンドルを下にドラッグしてすべての結果を取得してください。列 A と列 B の同じ行の値が一致する場合は TRUE、そうでない場合は FALSE を返します。スクリーンショットをご参照ください。
=A2=B2

IF 関数:
比較結果をより分かりやすくしたい場合は、IF 関数でカスタムメッセージを表示できます。
以下の数式を入力またはコピーし、「Enter」キーを押した後、フィルハンドルを下にドラッグしてすべての結果を取得してください。値が一致する場合は「一致」、異なる場合は「不一致」を返します。スクリーンショットをご参照ください。
=IF(A2=B2, "Match", "No Match")

EXACT 関数:
大文字と小文字を区別して比較したい場合は、「EXACT 関数」をご利用ください。
以下の数式を入力またはコピーし、「Enter」キーを押した後、フィルハンドルを下にドラッグしてすべての結果を取得してください。値が完全に一致する場合は「一致」、異なる場合は「不一致」と表示されます。スクリーンショットをご参照ください。
=IF(EXACT(A2,B2), "Match", "No match")

便利なツール「Kutools」で同じ行の一致を選び出して強調表示
比較結果を別の列に出力する代わりに、2 つの列の各行ごとに一致するセルを直接選択して色付けしたいなら、Kutools for Excel の「セルの比較」機能が最適です。この機能を使えば、各行内で値が一致または相違するセルを素早く選択し、塗りつぶし色を簡単に適用できます。
「Kutools」>「セルの比較」をクリックし、「セルの比較」ダイアログボックスで以下の操作を行ってください。
- 「値の検索元」と「基準」の各ボックスで、それぞれ対応する2 つの列のデータを選択してください。
- 「検索」セクションで「同じセル」を選択してください。
- 「選択結果の処理」セクションで、一致項目を強調表示する背景色を指定します。
- 最後に、「OK」ボタンをクリックしてください。

結果:
これにより、同じ行の一致セルが列 A 内でハイライトされ、選択されるため、任意のセルにコピー&ペーストできます。スクリーンショットをご参照ください。
- この機能は、「セルの比較」ダイアログボックスで「大文字と小文字を区別」オプションをオンにすると、「大文字と小文字を区別」して比較します。
- 列 B の一致項目を選択したい場合は、「セルの比較」ダイアログボックスで、「次の範囲で値を検索」および「基準」ボックスに指定されている2 つの列を入れ替えるだけで済みます。
- この機能をご利用になるには、Kutools for Excel をダウンロードしてインストールしてください。
2 つの列を比較して同じ行の一致を強調表示
Excel では、条件付き書式を使用するを使用して2 つの列を比較し、同じ行の一致セルを効率的にハイライトできます。以下に、行単位の一致を特定してハイライトする手順を示します。
手順1: データ範囲を選択する
データ範囲を選択して、その行内の一致するセルをハイライトしましょう。
手順2: 条件付き書式を使用する機能を適用する
- 「ホーム」>「条件付き書式を使用する」>「新しいルール」をクリックします。「新しい書式設定のルール」ダイアログボックスで、以下の操作を行ってください。
- 2.1「ルールの種類の選択」リストボックスで、「数式を使用して書式設定するセルを決定する」を選択してください。
- 2.2「次の数式を満たす値の書式設定」テキストボックスに、以下の数式を入力してください。
=$B2=$A2 - 2.3 次に、「書式設定」ボタンをクリックしてください。

- 表示された「セルの書式設定」ダイアログボックスで、一致するアイテムを強調表示する色を指定し、「OK」をクリックしてください。

- 「新しい書式設定のルール」ダイアログボックスに戻ったら、「OK」ボタンをクリックしてください。
結果:
これにより、同じ行にある一致する値が一括でハイライトされます。スクリーンショットをご参照ください。
- 条件付き書式で使用する数式は、大文字と小文字を区別しません。
- 値が異なるセルをハイライトしたい場合は、以下の数式を適用してください。
=$B2<>$A2
2 つの列を比較して一致するデータを抽出
Excel で2 つのデータセットを扱い、一方のリストに含まれる項目がもう一方にも存在するかを確認したい場合、こうした一致を取得するにはルックアップ数式が最適な解決策です。
Excel で列 A に果物のリスト、列 B にその販売数量が記録されており、列 D にある特定の果物リストと照合して対応する販売数量を取得したい場合、列 B から該当する値をどのように返せばよいでしょうか?
必要な数式を次のいずれかから選んで適用し、その後フィルハンドルを下にドラッグして他のセルにも同じ数式を適用してください。
- すべてのExcel バージョン対応:
=VLOOKUP(D2, $A$2:$B$6, 2, FALSE) - Excel 365 およびExcel 2021:
=XLOOKUP(D2, $A$2:$A$6, $B$2:$B$6)
結果:
一致が見つかった場合、すべての対応する値が表示されます。見つからない場合は#N/A エラーが返されます。スクリーンショットをご参照ください。
- 上記の数式では、列 D に列 A と一致しない果物が含まれている場合、エラーが返されます。こうしたエラーをよりわかりやすく表示するには、IFERROR 関数で数式をラップしましょう。
- すべてのExcel バージョン:
=IFERROR(VLOOKUP(D2,$A$2:$B$10,2,FALSE), "No match found") - Excel 365 およびExcel 2021:
=IFERROR(XLOOKUP(D2, $A$2:$A$10, $B$2:$B$10),"No match found")
- すべてのExcel バージョン:
- 高度な検索機能をお探しの方へ!「Kutools for Excel」には、従来の VLOOKUP 関数をさらに進化させた多彩な高度検索関数が豊富にラインナップされており、データ管理タスクの精度と効率を飛躍的に高めます。

Kutools for Excel には、生産性を大幅にアップさせる300 以上の便利ツールが収録されています。今すぐ全機能を体験して、スプレッドシート作業を次のレベルへ引き上げましょう!今すぐ入手!
関連記事:
- 範囲内で重複行を検索・ハイライト
- ワークシートのデータ範囲内には重複レコードが含まれている場合があり、次のようなスクリーンショットのように、範囲内の重複行を検索したりハイライトしたりしたいことがあります。もちろん、行を1 つずつ確認すれば見つけられますが、数百行もあると非効率です。ここでは、このタスクをより効率的にこなすためのいくつかの便利な方法をご紹介します。
- 重複する値を異なる色でハイライト
- Excel では、条件付き書式を使って列内の重複値を簡単に1 色でハイライトできますが、次のようなスクリーンショットのように、重複をより素早く簡単に識別できるよう、重複する値をそれぞれ異なる色でハイライトしたい場合もあるでしょう。Excel でこのタスクをどのように実現すればよいでしょうか?
- Excel で重複を検索・ハイライト・フィルター・カウント・削除
- Excel では、手動でのデータ入力や他のソースからのコピーなど、さまざまな理由で重複データが繰り返し発生します。場合によっては、こうした重複が有用で必要なケースもありますが、一方でエラーや誤解を招くこともあります。ここでは、Excel の数式や条件付き書式、サードパーティのアドインなどを活用し、重複データを素早く識別・強調表示・フィルター・カウント・削除する方法をご紹介します。
- 重複を削除して空白セルに置き換える
- 通常、Excel の「重複の削除」コマンドを適用すると、重複する行全体が削除されます。しかし、場合によっては重複する値だけを空白セルに置き換えたいこともあります。こうしたケースでは、「重複の削除」コマンドは使えません。本記事では、Excel で重複する値を削除し、その代わりに空白セルに置き換える方法をご紹介します。
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式を作成 | データ分析とチャート作成| 拡張機能を呼び出し… |
| 人気機能:検索、ハイライト、または重複をマーキング | 空白行を削除する | 列の結合またはセル(データを失うことなく) | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択ドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列を移動|非表示列の表示状態を切り替え|範囲と列を比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|…他にも多数 |
Kutools for Excel でExcel スキルを大幅に強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、作業時間を大幅に短縮する高度な機能を300 以上提供します。今すぐ、最も必要な機能を手に入れるにはこちらをクリック。。。
Office Tab が Office にタブ付きインターフェースを導入し、作業を格段に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効化。Publisher、Access、Visio、Project でも同様です。
- 新しいウィンドウではなく、同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。
- 1 日あたり数百回のマウスクリックを削減し、50% によって生産性を大幅に向上させます!
Kutools アドインすべて。インストーラーは1 つだけ
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリケーションを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラーもライセンスも1 つだけ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワフルに— Office アプリケーション全体で生産性を合理化
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- ベストバリュー— 個別アドイン購入よりお得









