エクセルで重複を削除・チェックする方法|色付け・件数・COUNTIF

エクセルで重複を削除・チェックする方法|色付け・件数・COUNTIF

エクセルで重複を扱うには、目的によって、方法が変わります。重複を削除したいなら、「データ」タブの「重複の削除」、重複を見つけたいなら、COUNTIF関数か条件付き書式、重複を除いた件数を数えたいなら、SUMPRODUCT関数などを使います。

この記事では、重複の削除、重複のチェック、重複のセルに色を付ける方法、重複を除いた件数の数え方、2つの列の組み合わせでの重複を、1つの表を使って説明します。下の練習ツールで、IDを書き換えて、判定の変わり方を試せます。

目次

エクセルで重複を扱う方法|目的別の選び方

やりたいこと方法ポイント
重複を削除する「データ」タブ→「重複の削除」元のデータが消えるので、先にコピーを取ります。
重複しているか調べる=IF(COUNTIF($A$3:$A$9,A3)>1,”重複”,””)重複の行に、「重複」と表示します。
重複のセルに色を付ける「条件付き書式」→「重複する値」式を使わずに、色で見つけられます。
2回目以降だけを見つける=IF(COUNTIF($A$3:A3,A3)>1,”2回目以降”,””)最初の1件を残して、あとの重複を見つけられます。
重複を除いた件数を数える=SUMPRODUCT(1/COUNTIF(A3:A9,A3:A9))同じ値を、1つと数えます。
2つの列の組み合わせで調べる=COUNTIFS(A3:A9,A3,B3:B9,B3)2つの列が両方同じ行を、重複とします。
注意注意:「重複の削除」を実行すると、重複した行が、元の表から消えます。取り消しは、実行の直後なら、Ctrl+Z でできますが、保存したあとは戻せません。先に、シートのコピーを取っておくと安心です。

重複を削除する(データタブの「重複の削除」)

重複した行を、まとめて削除する手順です。表の中の、どこか1つのセルを選んで、始めます。

1
表の中のセルを1つ選びます。
2
「データ」タブの「重複の削除」をクリックします。
3
重複を判定する列にチェックを入れます。IDだけで判定するなら、「注文ID」だけにチェックします。
4
「OK」をクリックします。重複した行が削除され、削除された件数が表示されます。

複数の列にチェックを入れると、チェックした列が、すべて同じ行だけが、重複として削除されます。最初に出てきた行が残り、あとの行が削除されます。

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

重複しているかをチェックする(COUNTIF関数)

削除する前に、どの行が重複しているかを、確認したいときは、COUNTIF関数を使います。同じ値が、範囲に何個あるかを数えて、2以上なら「重複」と表示します。C3セルに入れます。

IF関数の構文
数式=IF(COUNTIF($A$3:$A$9,A3)>1,"重複","")
ひとことで条件で結果を切り替える
COUNTIF($A$3:$A$9,A3)>1
条件です
"重複"
真の場合です
""
偽の場合です
エクセルで重複をチェックした表(重複判定、件数、2回目以降)
エクセルで重複をチェックした表(重複判定、件数、2回目以降)

O101は、3件あるので、「重複」と表示されます。O103は、1件だけなので、空白です。範囲は、「$A$3:$A$9」と固定し、調べるセルは、「A3」と固定しません。件数そのものを知りたいときは、次の式です。

COUNTIF関数の式
数式=COUNTIF($A$3:$A$9,A3)
ひとことで条件に合うセルの個数を数える
$A$3:$A$9
条件を判定する範囲です
A3
条件です

O101は、3、O102は 2、O103は 1 と表示されます。詳しくは、重複を見つける方法(COUNTIF関数)を参照してください。

重複のセルに色を付ける(条件付き書式)

式を使わずに、重複している値に、色を付けて見つける方法です。

1
重複を調べたい範囲(A3:A9)を選びます。
2
「ホーム」タブの「条件付き書式」→「セルの強調表示ルール」→「重複する値」を選びます。
3
色を選んで、「OK」をクリックします。重複している値すべてに、色が付きます。

色を付けたあと、「フィルターの色で並べ替え」を使うと、色付きのセルを、上にまとめられます。

2回目以降の重複だけを見つける(最初の1件を残す)

最初に出てきた1件は残して、2回目以降だけを、重複としたいときは、COUNTIF関数の範囲の「始点だけ」を固定します。E3セルに入れます。

IF関数の構文
数式=IF(COUNTIF($A$3:A3,A3)>1,"2回目以降","")
ひとことで条件で結果を切り替える
COUNTIF($A$3:A3,A3)>1
条件です
"2回目以降"
真の場合です
""
偽の場合です

範囲が「$A$3:A3」なので、下へコピーすると、「その行まで」の範囲で数えます。O101の、1件目(3行目)は空白、2件目(5行目)と3件目(9行目)が、「2回目以降」になります。この列で、フィルターをかけて、「2回目以降」の行を削除すると、最初の1件だけが残ります。

重複を除いた件数を数える

同じ値を、1つと数えた、件数を求めるには、SUMPRODUCT関数と COUNTIF関数を組み合わせます。

SUMPRODUCT関数の式
数式=SUMPRODUCT(1/COUNTIF(A3:A9,A3:A9))
ひとことで掛け算の合計を求める
1/COUNTIF(A3:A9,A3:A9)
1つ目の範囲です

O101は3件あるので、それぞれ「1/3」と数えて足すと1になる、という仕組みです。結果は、O101・O102・O103・O104の 4 件です。Microsoft 365・Excel 2021以降では、UNIQUE関数を使って、=COUNTA(UNIQUE(A3:A9)) と書くこともできます。

2つの列の組み合わせで重複を調べる

「注文IDと商品の両方が、同じ行」を重複とするときは、COUNTIFS関数で、2つの条件を指定します。IDがO101で、商品がりんごの行の数は、次の式です。

COUNTIFS関数の構文
数式=COUNTIFS(A3:A9,"O101",B3:B9,"りんご")
ひとことで複数の条件に合うセルの個数を数える
A3:A9
1つ目の条件の範囲です
"O101"
1つ目の条件です
B3:B9
2つ目の条件の範囲です
"りんご"
2つ目の条件です

O101で、商品がりんごの行は、3行目と5行目の 2 件です。表のすべての行に使うときは、条件を「A3」「B3」のように、セルで指定します。詳しくは、複数列の重複をチェックする方法(COUNTIFS)を参照してください。

重複がうまく見つからない・消えないときの確認表

症状考えられる原因対処
同じに見えるのに、重複と判定されない末尾のスペースや、全角・半角の違いがあるTRIM関数で余分なスペースを消す。全角・半角を、そろえる。
重複の削除で、思った行が消える判定の列の選び方が違う重複の削除の画面で、判定に使う列だけに、チェックを入れる。
数字の重複が見つからない数字が、文字と数値で混ざっているすべて数値(または文字)に、そろえる。
条件付き書式で、色が付かない範囲の選び方が違う重複を調べたい範囲を、すべて選んでから、設定する。
SUMPRODUCTの式が #DIV/0! になる範囲に空白のセルがある空白のない範囲にする。または、IF関数で空白を除く。

重複のよくある質問

重複を残して、一意のリストを作るには?

Microsoft 365・Excel 2021以降なら、UNIQUE関数で、重複を除いたリストを、別の場所に作れます。元のデータは、そのまま残ります。UNIQUE関数の使い方を参照してください。

重複を削除すると、どの行が残りますか?

「重複の削除」では、最初に出てきた行が残り、あとの行が削除されます。残したい行を、先頭に並べ替えてから、実行します。

重複の行だけを、取り出すには?

COUNTIFで「重複」と表示した列に、フィルターをかけて、「重複」の行だけを表示します。FILTER関数が使えるなら、=FILTER(A3:B9,C3:C9="重複") でも取り出せます。

あわせて読みたい:重複の関連記事

練習用ファイル:練習用Excelファイル(.xlsx・無料)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次