Excelでデータ管理をする際、複数の条件を組み合わせて重複をチェックしたいケースは多いですよね。
たとえば、「氏名+日付」や「商品名+ID」のように、複数列を基にしてデータの重複を特定したい場合です。
この記事では、Excelで複数条件を使った重複チェックの方法を、条件付き書式やCOUNTIFS関数、さらにはVBAでの自動化まで詳しく解説します。
重複データの特定や削除でお困りの方は必見です!
Contents
Excelで重複チェックを行う基本的な方法とは?
1. 単一条件での重複チェック
単一の列で重複を確認する場合、**「条件付き書式」または「フィルター」**を使うのが一般的です。
条件付き書式で重複をハイライト
- 対象の列を選択。
- 「ホーム」タブ → 「条件付き書式」 → 「セルの強調表示ルール」 → 「重複する値」を選択。
- 表示形式を選び「OK」。
2. 複数条件での重複チェック
複数の列を条件として重複を確認したい場合は、COUNTIFS関数や条件付き書式のカスタムルールを活用します。
複数条件を使った重複チェック:条件付き書式編
条件付き書式を利用して、複数条件を満たす重複データをハイライト表示する方法を解説します。
手順
- データ範囲を選択(例:列A~列C)。
- 「ホーム」タブ → 「条件付き書式」 → 「新しいルール」を選択。
- 「数式を使用して、書式設定するセルを決定」を選ぶ。
- 次のような数式を入力:swiftCopy code
=COUNTIFS($A$2:$A$100,A2,$B$2:$B$100,B2)>1
$A$2:$A$100
:重複チェックする範囲(氏名列)。$B$2:$B$100
:日付列。>1
:同じ組み合わせが複数回出現していることを判定。
- 書式設定を選択して色を指定し、「OK」。
これで、複数条件を満たす重複データがハイライトされます。
COUNTIFS関数で複数条件の重複をチェックする方法
COUNTIFS関数を使うと、特定の条件を満たすデータが何回出現しているかを計算できます。
これを利用して重複データを判定する方法を紹介します。
COUNTIFS関数の基本構文
scssCopy code=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2, ...)
具体例
- データ例
- 列A:氏名
- 列B:日付
- 手順
- 列Cに以下の式を入力:swiftCopy code
=COUNTIFS($A$2:$A$100,A2,$B$2:$B$100,B2)
- COUNTIFSの結果が「2以上」であれば、該当データは重複しています。
- 列Cに以下の式を入力:swiftCopy code
- 重複データを見分ける
- 列Cにフィルターをかけて「2以上」を抽出。
- 重複データを確認できます。
重複データを効率よく削除する手順
Excelでは、「データツール」の**「重複の削除」**機能を使って簡単に重複データを削除できます。
手順
- データ範囲を選択。
- 「データ」タブ → 「重複の削除」をクリック。
- 「列の選択」で重複判定に使う列を指定(例:氏名と日付)。
- 「OK」をクリックして重複を削除。
注意:重複削除は元のデータを削除するので、事前にバックアップを取っておくことをおすすめします。
VBAで複数条件の重複チェックを自動化する方法
手動で重複チェックを行うのが面倒な場合、VBAを使うことで自動化できます。
サンプルコード:複数条件で重複をチェック
以下のコードを使うと、重複データを色付けできます。
vbaCopy codeSub 重複チェック()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim j As Long
' ワークシートの指定
Set ws = ThisWorkbook.Sheets("Sheet1")
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
' 重複チェック
For i = 2 To lastRow
For j = i + 1 To lastRow
If ws.Cells(i, 1).Value = ws.Cells(j, 1).Value And _
ws.Cells(i, 2).Value = ws.Cells(j, 2).Value Then
ws.Cells(i, 1).Interior.Color = RGB(255, 0, 0) ' 赤でハイライト
ws.Cells(j, 1).Interior.Color = RGB(255, 0, 0) ' 赤でハイライト
End If
Next j
Next i
End Sub
使い方
- Excelで「Alt + F11」を押してVBAエディタを開く。
- 「挿入」→「モジュール」を選択。
- 上記コードを貼り付けて実行。
よくある質問

Q1. COUNTIFS関数でエラーが出る場合、どうすればいいですか?
A. 範囲の指定が正しいか確認してください。
また、データの範囲に空白や誤入力がないかもチェックしましょう。
Q2. 重複削除で重要なデータを消したくない場合、どうすればいいですか?
A. 削除前に必ずデータのバックアップを取るか、条件付き書式で重複を確認した後に削除を検討してください。
Q3. VBAが動作しない場合の対処法は?
A. マクロのセキュリティ設定を確認し、「信頼されたドキュメント」または「マクロ有効」に設定してください。
参考リンク
Excelで複数条件を使った重複チェックは、関数や条件付き書式、さらにはVBAを活用することで効率的に行えます。
この記事を参考にして、データ管理の精度をさらに高めましょう!
Excel 関連記事 一覧
【エクセル】で引き算をする方法|関数名と具体例をわかりやすく解説!
【エクセル】離れたセル同士で引き算を行う方法|効率的な計算テクニックを解説
【エクセル】引き算の結果が「0」の場合の表示・非表示設定方法を解説
【エクセル】条件付きで中央値を求める方法|FILTER関数と配列数式を解説
【エクセル】四分位数と中央値を求める方法|QUARTILE関数の使い方を解説
【エクセル】セルの文字数制限を解除する方法|長文データの効率的な扱い方
【エクセル】標準偏差を計算して折れ線グラフに表示する方法|エラーバー付き解説
エクセルで相関係数を計算&散布図を作成する方法!データ分析を簡単に視覚化
【Excel】合計値から引き算をする方法|SUM関数を使った計算を徹底解説
【Excel】セルを固定して引き算を行う方法|オートフィルの活用手順も解説
【Excel】行と列を入れ替える方法とは?|初心者向け簡単ガイド
【Excel】で2桁数字を縦書きにする方法!書式設定と見栄えを整えるコツを解説
Excelで縦書きセルの数字だけ横向きに!書式設定とデザインのコツを解説
ExcelでCSVに変換できない原因と解決方法!文字化けやデータ損失を防ぐ手順も解説!
Excelでハイパーリンクを使って特定のシートやセルに移動!設定方法とトラブル解決
Excelでヒストグラムの階級の幅を設定する方法!幅の調整とデータ分布を可視化するコツ
Excelでヒストグラムの範囲と階級幅を変更する方法!データ分布を見やすくカスタマイズ
Excelでヒストグラムを重ねる方法!複数データを比較するグラフの作り方とコツ
【Excel】で複数条件を使った重複チェックの方法!関数・条件付き書式・VBAも解説
Excelで特定のセルを固定して掛け算する方法!絶対参照や効率的なテクニックを解説
ロト6の当選番号をExcelで管理・分析する方法!一覧表テンプレートや自動化手順を解説