大量のデータの中から同じ値や重複したデータを探し出すことは、データ整理や品質管理において非常に重要な作業です。
エクセルの各種機能を活用することで、重複データの発見と抽出を効率的に行えます。
本記事では、条件付き書式による重複の視覚化・VLOOKUP・COUNTIF・フィルター機能など、同じ値を探すための多彩な方法を詳しく解説いたします。
データの整合性を高めたい方や重複チェックを効率化したい方に、特におすすめの内容です。
同じ値を探す方法の全体像と使い分けの基準
それではまず、エクセルで同じ値を探すための方法の全体像と、それぞれの使い分け基準について解説していきます。
エクセルで重複を検索する方法は複数あり、目的・データ量・処理の自動化の必要性によって最適な方法が異なります。
自分の目的に合った方法を選ぶことが、作業効率を最大化する近道です。
主要な重複検索方法の比較
エクセルで同じ値を探す主な方法には「条件付き書式」「COUNTIF関数」「VLOOKUP関数」「フィルター機能」「重複の削除機能」の5つがあります。
| 方法 | 特徴 | 適した場面 |
|---|---|---|
| 条件付き書式 | 視覚的にわかりやすい | 重複の確認・目視チェック |
| COUNTIF | 件数を数値で把握できる | 重複件数の定量把握 |
| VLOOKUP | 2リスト間の照合に最適 | 別リストとの一致確認 |
| フィルター | 簡単な操作で絞り込める | 特定の値を素早く抽出 |
| 重複の削除 | 一括削除が可能 | 重複を取り除いた一意リスト作成 |
条件付き書式で重複値を自動的に色付けする
最も視覚的にわかりやすい重複確認方法は条件付き書式の「重複する値」ルールを使う方法です。
重複を確認したい範囲を選択し、「ホーム」→「条件付き書式」→「セルの強調表示ルール」→「重複する値」を選択します。
設定すると重複しているセルが自動的に指定した色でハイライトされるため、目視での重複確認が一瞬で完了します。
「一意の値」を選択すると重複していない値だけがハイライトされるため、逆の確認も簡単に行えます。
COUNTIF関数で重複の件数を数値で把握する
COUNTIF関数を使うと各データが何回出現するかを数値で把握できます。
「=COUNTIF($A$1:$A$100,A1)」という数式を隣の列に入力してコピーすることで、各行の値が全体に何件あるかが数値で表示されます。
結果が1なら一意のデータ・2以上なら重複データという判断ができるため、IF関数と組み合わせて「重複あり」「一意」のラベルを表示することも可能です。
「=IF(COUNTIF($A$1:$A$100,A1)>1,”重複”,”一意”)」のような数式で各行に自動的にラベルを付けることができます。
VLOOKUPを使った2リスト間の一致確認
続いては、VLOOKUP関数を使って2つのリスト間で同じ値を探す方法を確認していきます。
2つの異なるリストを照合して一致するデータを探し出す場面は、実務で頻繁に発生します。
VLOOKUPによるリスト照合は重複確認の中でも特に実用的なテクニックのひとつです。
VLOOKUPで2つのリストを照合する基本手順
リストAの値がリストBに存在するかどうかを確認するには、VLOOKUP関数をIFERROR関数と組み合わせます。
「=IFERROR(VLOOKUP(A1,Sheet2!$A:$A,1,FALSE),”なし”)」という数式で、A1の値がSheet2のA列に存在すれば値が返され、存在しなければ「なし」が返されます。
結果が「なし」以外であればリストBに一致する値が存在するということを示します。
この照合は顧客リストの突合・在庫リストの確認・メールアドレスの重複チェックなど様々な場面で活用できます。
MATCH関数を使ったリスト照合の方法
VLOOKUPの代替としてMATCH関数も一致確認に使えます。
「=IFERROR(MATCH(A1,Sheet2!$A:$A,0),”なし”)」とすることで、A1の値がSheet2のA列の何行目にあるかを返します。
MATCHはVLOOKUPより処理が軽く大量データでも高速に動作するため、データ量が多い場合はMATCHを優先することをおすすめします。
MATCH関数の戻り値(行番号)をINDEX関数と組み合わせれば、一致した行の他の列の情報も取得できます。
XLOOKUP関数による高度なリスト照合(Excel 365・2021以降)
Excel 365およびExcel 2021以降ではXLOOKUP関数が使用でき、VLOOKUPより柔軟で強力なリスト照合が可能です。
「=XLOOKUP(A1,Sheet2!$A:$A,Sheet2!$A:$A,”なし”)」とすることで、一致した値を返し見つからない場合は「なし」を表示します。
XLOOKUPはエラー処理が引数に含まれているためIFERRORが不要で、数式がよりシンプルになります。
VLOOKUPの列指定の制約もなく、右から左への検索や完全一致・近似一致の柔軟な切り替えもXLOOKUPの優れた点です。
重複データの抽出・削除・管理の方法
続いては、重複データを特定した後の抽出・削除・管理の方法を確認していきます。
重複を見つけるだけでなく、その後の処理まで効率よく行うことで、データクリーニングが完結します。
フィルターで重複データを一括抽出する
COUNTIF関数で重複フラグを付けた後、その列にフィルターをかけることで重複データのみを一括表示できます。
「重複」ラベルの行だけをフィルターで表示し、内容を確認してから削除や修正の判断を行うことができます。
フィルターで抽出した結果を別シートにコピーすることで、重複データの一覧を簡単に作成できます。
フィルター適用中のコピーは可視セルのみのコピーになるため、Alt+;(セミコロン)で可視セルを選択してからコピーする習慣をつけましょう。
「重複の削除」機能で一意のデータリストを作る
重複を削除して一意のデータリストを作成したい場合は、「データ」タブの「重複の削除」機能が最も手軽です。
データ範囲を選択して「データ」→「重複の削除」をクリックし、重複チェックの対象列を選択してOKを押すだけで重複行が自動削除されます。
実行前に必ずデータをバックアップしておくことが重要で、削除は元に戻しにくいため慎重に操作しましょう。
UNIQUE関数(Excel 365・2021以降)を使えば元データを保持したまま別の場所に一意のリストを作成できるため、こちらも積極的に活用してみましょう。
Power QueryでのAdvanced重複チェック
大量データや複数テーブルにまたがる重複チェックには、Power Queryの活用が効果的です。
「データ」→「データの取得」からPower Queryエディターを開き、「重複の削除」や「重複の保持」機能を使って重複を処理できます。
Power Queryは元データを変更せずに変換処理を行えるため、元データを保護しながら安全にデータクリーニングが実施できます。
一度設定したクエリはデータ更新時に「更新」ボタンを押すだけで再実行できるため、定期的なデータクリーニング作業の自動化にも最適です。
まとめ
エクセルで同じ値を探す方法は条件付き書式・COUNTIF・VLOOKUP・フィルター・重複の削除機能など多彩な選択肢があります。
視覚的な確認には条件付き書式・件数の把握にはCOUNTIF・2リスト間の照合にはVLOOKUPまたはXLOOKUPがそれぞれ適しています。
重複を発見した後は、フィルターでの抽出・重複の削除機能・Power Queryを活用することで効率的なデータクリーニングが実現できます。
目的に応じて最適な方法を選んで組み合わせることが、データ品質管理の精度を高める鍵といえるでしょう。