excelで重複データを洗い出す方法/条件付き書式設定・Countif関数の使い方

IT

リストを作ったはいいけど、同じデータがいくつもある……ありがちなミスですが、方法さえ知っていればexcel上で重複チェックするのは難しいことではありません。
資料の完成度(および、あなたへの信頼度)を上げるために、作業ルーチンに組み込むべきチェック方法を紹介します。

Advertisements

条件付き書式設定を使う方法

dup1

とりあえず適当なテストデータを作りました



dup2

重複をチェックしたい範囲を選択



dup3

ホームタブ→条件付き書式をクリック



dup4

セルの強調表示ルール→重複する値をクリック



dup5

「重複する値」の設定画面になります。値が「重複」であれば重複した項目を確認、「一意」であれば逆にひとつしかない項目をチェックします



dup6

書式は他にも色々な種類があり、ユーザー設定でカスタマイズすることも可能



dup7

値が重複の状態で「OK」を押すと、重複する項目に対して効果がかかった状態で元の画面に戻りました


dup8

内容が修正されて重複項目ではなくなると、自動的に効果が解除されます

Advertisements

Countif関数を使う方法

もうひとつの定番の方法としては、Countif関数を使うものがあります。
countifは範囲内で「検索条件」と一致するものを数える関数です。
(順を追って説明しますが、もし式だけ知りたい方は=if(countif(範囲,条件)=1,””,”重複”)を使用してください)

=countif(範囲,検索条件)

さっきの表で「a」を表示しているセルの数を数えるのであれば、範囲がA1:A11(A1からA11まで)、検索条件が”a”になります。
なので、式は=countif(A1:A11,”a”)となります。
dcountif1
A1からA11に同じ文字が3つあるということは、重複しているということです。
検索条件を「a」でこの結果が出るということは、結果的に「a」を返すA1を検索条件に使っても同じ結果が出ることになります。

上の式の検索条件をA1、A2、A3……とズラしていけば、それぞれの行ごとに重複しているかどうかが数字によって判別できます。
普通にスライドさせると範囲の数字が増えてしまうので、範囲は$を付けて固定します。
(=countif(A$1:A$11,A1)
dcountif2
dcountif3
パッと見でわかるように、数字が2以上の時にはエラーメッセージを表示し、数字が1の時には空白を表示することにします。
条件指定なので、If文を使用します。
条件が満たされた場合は結果A、満たさない場合は結果Bが返されます。

If(条件,結果A,結果B)

この場合だと、if(B1=1,””,”重複”)if(B1>1,”重複”,””)などで判定が可能です。
式をB1に書き、B11までドラッグしてコピーします。
dcountif4
このCountifとifはひとつの式にまとめることが可能です。
上のif文の「B1=1」のB1はCountifの結果を参照しているので、最初からB1にさっきのcountif文をまるごと代入すればいいのです(ただし頭の「=」は式の最初にひとつだけあればいいので省く)。
従って、最終的な式としては=if(countif(A$1:A$11,A1)=1,””,”重複”)となります(B1→B11までコピー)。
dcountif5
重複データの洗い出しについては以上となります。

やりたいことから方法を探すエクセルExcel操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ

コメント