【スプレッドシート】COUNTIF関数を使って、2つの列間で重複する値をみつけよう


こんにちは、Forkusです!

今回は、2つの列間で重複する名前を瞬時に炙り出すCOUNTIF関数をご紹介します。

Forkus
それっていつ使うんや。

と、思われる方も、以下の例をご覧ください。

つまり、

上司
今年も昨年も参加した人は誰だったかのう。
部下
水色枠の中にまとめてあります!!
ということですね。

昨年度と本年度、両列(年度)に重複する参加者の名前が、右の水色枠へまとめられています!


実はこれ、COUNTIF関数に少しだけ工夫を加えるだけで簡単に実現できます。

重複値を取り出す、UNIQUE関数と似ているような気もしますね。しかし、UNIQUE関数は一列中にある2つ以上ある重複データを1つだけにして、キレイに仕立て直す関数です。今回紹介するのは、二列に存在する情報間で、重複値を見つけ出す関数です。

【スプレッドシート】UNIQUE関数を使って重複する文字や数字を一つにまとめよう

2019.02.01

1. COUNTIF関数を使って、重複データを数えよう


優しい先生
COUNTIF関数は、ある範囲の中に、あなたが指定した条件と同じ値が何個あるのかを求めます。使い方を見てみましょう。

1-1. COUNTIF関数

  1.  つくりかた
  2. = COUNTIF(調べたい範囲, 一致条件)

  3.  今回のケースではどうなる?
  4.  上を参考にして、次の式をつくろう
  5.  = COUNTIF(B3:B12,A3) 

  6.  セルD3に、 を入力し、一番下までコピペしよう
  7. B3:B12には、絶対参照($)がかかっています。式を下にコピペするとき、範囲も一つづつズレないようにするためです。この範囲を選択後、”F4”キーを押すことで使えます。
    Windows F4 | Mac fn + F4

優しい先生
COUNTIF関数によって、去年も今年も参加している方には「1」が表示されましたね。これは、調べたい範囲(B3:B12)に、一致条件と同じ値が1つあることを表します。

2. IF関数を使って、さっきの「1」を名前表示にしよう


優しい先生
IF関数は、「もし〜なら、〜にする」関数です。
今回は、もし「1」なら「その人の名前」を表示して、もし「0」なら、空白表示にすることが目標です。

2-1. IF関数

  1.  IF関数のつくりかた
  2. = IF(条件式、○の場合表示したい内容、×の場合表示したい内容)

  3.  今回のケースではどうなる?
  4. 条件式: COUNTIF(B3:B12,A3) = 1

    ○(=1)の場合表示したい内容:その人の名前( = A3〜A12)

    ×(1でない)の場合表示したい内容:空欄(”_”)


  5.  上を参考にして、次の式をつくろう
  6.  = IF(COUNTIF($B$3:$B$12,A3)=1,A3,””) 

  7.  セルD3に の式を入力し、一番下までコピペしよう

優しい先生
おつかれさまでした。無事、IF関数によって、両年共参加している人 =「1」を実際の名前に、又、そうでない人=「0」は空欄に変えることが出来ましたでしょうか。質問がある方はお気軽にどうぞ。