【Excel】重複を数える!COUNTIFで同じ値の件数を出す手順

【Excel】重複を数える!COUNTIFで同じ値の件数を出す手順
🛡️ 超解決

大量の顧客データや商品リストを扱う実務において、データの「重複」は集計ミスや二重送付などの致命的なトラブルを引き起こす原因となります。目視で一つひとつ同じ値を探す作業は、数百件を超えるデータでは現実的ではなく、必ず見落としが発生します。Excelで重複を正確に把握し、その件数を集計するための最も基本的かつ強力な武器がCOUNTIF(カウント・イフ)関数です。本記事では、特定のデータがリスト内に何件存在するかを数える基本操作から、2回目以降に出現した重複のみを特定してフラグを立てる実用的な数式、さらに視覚的に重複をあぶり出す条件付き書式との連携までを網羅的に詳説します。

【要点】重複を制してデータの整合性を保つ3つの基本ロジック

  • COUNTIF関数で出現回数を算出: リスト全体をスキャンし、それぞれのデータが「何個あるか」を数値化する。
  • 「2回目以降」をフラグで抽出: 範囲の起点を固定する数式を用い、重複しているデータだけを特定する。
  • 条件付き書式で重複を可視化: 数値が1より大きい場合にセルに色を付け、直感的なチェックを可能にする。

ADVERTISEMENT

1. 基礎:COUNTIF関数の構文と「重複カウント」の仕組み

重複を数えるロジックは、「この範囲の中に、この値と同じものがいくつあるか?」という問いをExcelに投げることに他なりません。その命令を司るのがCOUNTIF関数です。

1-1. 基本書式

=COUNTIF(範囲, 検索条件)

  • 範囲: 重複を調べたいデータが並んでいるセル範囲(例:A:A や B2:B100)。
  • 検索条件: 数えたい対象の値。特定のセル(例:A2)を指定するのが実務的です。

1-2. 重複判定の基準値

COUNTIF関数の結果が「1」であれば、そのデータはリスト内に一つしか存在しない(ユニークなデータ)ことを意味します。結果が「2以上」であれば、それはどこかに同じ値が存在する「重複データ」であると即座に判断できます。この「1より大きいか否か」が、データクレンジングにおける重要な分岐点となります。


お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. 実践:特定の列で重複している件数を一覧表示する

例えばA列に「メールアドレス」が並んでおり、それぞれの登録回数を確認したい場合の手順です。

2-1. 【操作】出現回数算出のフロー

  1. B2セル(データの隣の列)に以下の数式を入力します。
    =COUNTIF(A:A, A2)
  2. この数式を下方向へオートフィルでコピーします。

結果: B列にそれぞれのデータの出現回数が表示されます。「3」と出ている行は、A列の中に同じアドレスが3つ存在することを示しています。このB列で「降順」に並べ替えを行えば、重複の激しいデータがリストのトップに並び、一目で問題箇所を特定できます。


3. 高度:2回目以降の出現だけに「重複フラグ」を立てる

実務では「重複している数」を知るだけでなく、「1件目は残し、2件目以降を削除対象として特定したい」という場面が多くあります。この場合、範囲の指定方法に工夫が必要です。

3-1. 起点を固定する「累積カウント」の数式

以下の数式をB2セルに入力します。
=COUNTIF($A$2:A2, A2)

ロジックの解説: 第一引数の「$A$2:A2」という記述がポイントです。範囲の開始点($A$2)を絶対参照で固定し、終了点(A2)を相対参照にすることで、下へコピーするにつれて範囲が「$A$2:A3」「$A$2:A4」と広がっていきます。これにより、「その行までに、その値が何回目に出てきたか」を数えることが可能になります。

3-2. 重複削除への応用

この累積カウントの結果が「2」以上のセルは、必ず「以前の行に同じデータが存在している」ことを意味します。オートフィルターでB列の「2以上」を抽出すれば、ユニークな1件目を残したまま、重複分だけを一括で削除する準備が整います。


ADVERTISEMENT

4. 比較検証:重複チェックの3大アプローチ

目的に応じて最適な手段を選択するための比較表です。

手法 メリット 適した場面 データの変更
COUNTIF(A:A, A2) 全体の重複数が一瞬でわかる 単純な件数集計、重複の多さを分析する時 なし(数値表示のみ)
COUNTIF($A$2:A2, A2) 削除対象を厳密に特定できる 重複データのクレンジング、1件目残し なし(フィルタ用)
重複の削除機能 操作が最も簡単 確認不要で即座に消したい時 あり(元データが消える)

5. 視認性向上:条件付き書式で重複セルを自動彩色する

数値で確認するだけでなく、重複しているセルそのものに色を付けて強調表示させる方法です。データの入力ミスをその場で防ぐのに非常に有効です。

5-1. 標準機能による一括彩色

  1. チェックしたい範囲を選択します。
  2. 【ホーム】タブ > 【条件付き書式】 > 【セルの強調表示ルール】 > 「重複する値」 を選択します。
  3. 書式(「濃い赤の文字、明るい赤の背景」など)を選んでOKを押します。

5-2. 数式を用いた高度な彩色(特定の条件のみ)

「A列の重複だけでなく、B列の金額が10,000円以上の時だけ色を付けたい」といった場合は、条件付き書式の「新しいルール」でCOUNTIF関数を直接記述します。
=AND(COUNTIF($A:$A, $A1)>1, $B1>=10000)
このように関数を条件式のロジックに組み込むことで、より実務に即した動的なチェックシステムをデプロイ(配置)することが可能になります。


6. トラブル対応:重複しているはずなのに「1」と出る場合

見た目は同じなのにCOUNTIF関数が重複としてカウントしない場合、そこには必ず「データ上の不一致」が隠れています。

6-1. 余計なスペース(空白文字)の混入

「 田中」と「田中 」のように、文字の前後に目に見えないスペースが入っていると、Excelは別のデータとして扱います。これを解決するには、TRIM関数を用いてスペースを一括除去するか、置換機能([Ctrl]+[H])で空白を削除するクレンジング工程が必要です。

6-2. 数値と文字列の型不一致

片方のセルが「数値」として保存され、もう一方が「文字列」として保存されている場合、見た目が同じ「123」でも重複とはみなされません。セルの左上に緑の三角マークが出ていないか確認し、型をどちらかに統一(前述の数値変換手順など)してください。


7. 補足:大量データ(数万行以上)での計算負荷

COUNTIF関数は非常に便利ですが、列全体(A:A)を対象にした計算を数万行にわたってコピーすると、Excelの動作が著しく重くなることがあります。これは、各セルが常にリスト全体を再スキャンし続けるためです。動作が重いと感じた場合は、計算結果を「値貼り付け」で固定して数式をパージ(消去)するか、ピボットテーブルを用いた重複集計への切り替えを検討してください。


8. 結論:『重複の可視化』がデータの精度を担保する

データの重複チェックは、単なる整理整頓ではなく、情報の正確性を守るための「検閲プロトコル」です。COUNTIF関数を使いこなし、数値で出現回数を捉え、累積カウントで削除対象を特定し、条件付き書式でアラートを出す。この多角的なチェック体制を整えることで、ヒューマンエラーによるデータの汚れを最小限に抑えることができます。

リストを渡されたとき、まずは端の列にCOUNTIFを仕込んでみる。その一歩が、後工程で発生する不整合や手戻りを防ぎ、実務のスループットを最大化させる鍵となります。正確なデータ管理こそが、Excelというツールを信頼に足るビジネス基盤へと昇華させるのです。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。