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関数を組み合わせることで、重複入力を防ぐことができます。