1/29/2020

Excel。重複防止をするなら、入力規則とCOUNTIF関数で解決できます。【Duplication prevention】

Excel。重複防止をするなら、入力規則とCOUNTIF関数で解決できます。

<入力規則+COUNTIF関数>

精度の高いデータを作るうえで、考えないといけないものの中のひとつに、『重複』があります。

すでに入力されているデータから重複を見つける方法は、様々ありますが、これから入力する時に、重複を防ぐことができるなら、それに越したことはありません。

では、どのようにしたらいいのでしょうか?

考え方として、入力した時に、重複だったら入力をさせないようにしたいわけですね。
入力時にリアクションをさせたいので、『入力規則』を使うとよさそうな感じがしますね。

あとは、どのような条件にしたらいいのかをかんがえていきましょう。

入力したデータが、すでに範囲内にあるかどうかを判断させればいいわけです。

“あるかどうか”ということは、1件あるかどうかということで、判断できそうです。
件数を算出するなら、COUNTシリーズの関数を使うといいようです。

COUNTシリーズを使うとして、範囲が複数列にまたぐことは、ありませんので、使う関数は、COUNTIF関数で対応できるようですね。

では、作成していきましょう。
次の表があります。

A列の番号の列に重複防止の入力規則を設定していきます。

該当する範囲を選択します。今回は、A2:A5までとします。

データタブの「データの入力規則」をクリックします。

データの入力規則ダイアログボックスが表示されます。条件を数式で作る必要があるので、設定タブの入力値の種類を「ユーザー設定」を選びます。

数式ボックスに、COUNTIF関数を設定します。

=countif($A$2:$A$5,a2)=1

範囲を絶対参照にしないと、ズレてしまうので、忘れないように設定します。

今回はすでに入力されているデータから重複をみつけるわけではないので、「=1」としておけば、すでに入力しているデータがあれば、COUNTIF関数の結果が「1」と算出されるので、合致した場合は、重複入力をしているという判定ができるわけです。

せっかくなので、エラーメッセージも設定しておきましょう。

エラーメッセージタブにして、スタイルは、「停止」タイトルとエラーメッセージに重複していることがわかるメッセージをいれておきましょう。

また、今回は、直接入力(半角英数)なので、日本語入力も設定しておきましょう。

日本語入力タブにして、日本語入力を「オフ(英語モード)」にしたら、OKボタンをクリックします。

では、確認してみましょう。

A2に「1」と入力されている状態で、A4に「1」と入力したら、重複しているメッセージが表示することが確認できました。

このように、入力規則とCOUNTIF関数を組み合わせることで、重複入力を防ぐことができます。