二つリストがあったときに同じデータが登録されているか確認したい時があると思います。
二つのリストを見比べながら、マーカーでマークしながらリストを消していくのもよいのですが(よくない)、関数を使って比較したいと思います。
はじめに
やりたいことは、右の図のように二つのリストがあったときに、お互いに名前がいるかどうかのチェック。
(このリストはランダムな名前の生成を利用してます。)
使う関数
COUNTIFS
特定の条件に一致するセルの個数を返します。
=COUNTIFS(検索条件範囲1,検索条件1,…)
一つの条件(名前)の検索
まずは、名前二つのリストで同じ名前があるかどうかを見ていきます。
①名簿1の名前が名簿2にあるか
名簿1の空いている列のセルに「=COUNTIFS(」を入力し、
検索条件範囲1には、名簿2の名前列の範囲
[名簿2.xlsx]Sheet1!$B$1:$B$21
検索条件1 には名簿1の名前セル
B2
を入力します。(右図)
最後まで書くと
=COUNTIFS([名簿2.xlsx]Sheet1!$B$1:$B$21 ,B2)
実行した結果、1と表示されましたので、名簿1のNo1の名前は名簿2のリストに1件含まれているとなります。
この関数をコピーして名簿1の最終行前貼り付けることで、名簿1の中で、名簿2にいる名前といない名前がわかります。今回の例では、No5,11が名簿2にいません。
②名簿2の名前が名簿1にあるか
これは①と逆のことをやりましょう。
名簿2の空いている列にCOUNTIFS関数で名簿1に含まれている数を数えます。
③片方にしかいない名前が判明
COUNTIFSの実行結果が0の名前は片方のリストにしか含まれていません。
同一のリストのはずであれば、そのデータが誤りになりますので注意してみてみましょう。
複数の条件(名前と生年月日)の検索
同姓同名の場合なども考えると、生年月日などのほかの要素でも比較しておきたい場合があると思います。
その場合には、COUNTIFSに複数条件を入れましょう。
COUNTIFSの複数条件の設定
やり方は、簡単です。 検索条件範囲と検索条件のそれぞれを追記するだけです。検索条件範囲と検索条件は必ずセットで入力します。
2つの条件を設定する場合のお手本の関数としては、
=COUNTIFS(検索条件範囲1,検索条件1,検索条件範囲2,検索条件2,…)
となりますので、
検索条件範囲1: [名簿2.xlsx]Sheet1!$B$1:$B$21
検索条件1:B2 ←「名前」
検索条件範囲2: [名簿2.xlsx]Sheet1!$D$1:$D$21
検索条件2:D2 ←「生年月日」
を設定します。
検索条件範囲は、同じ範囲をしてください。
今回の例では、1行目から21行目を指定しましたので。Bの名前の範囲でもDの生年月日の範囲でも1行目から21行目を指定しましょう。
コメント