COUNTA・UNIQUE・FILTER関数を用いて条件に合ったデータ数を数える[Googleスプレッドシート]
複数の関数を用いて、条件に合ったデータ数を数えます。
以下のダミーデータを用います。
受注案件のデータベースです。
案件名には通し番号が付与されます。
1つの課のみで担当する案件もあれば、複数の課で担当する案件もあります。
このデータから、「複数の課で担当している案件の数」を数えたいとします。
以下の関数式で実現できました。
今回のお題は自分では解決できず、所属しているコミュニティのSlackにて質問したところ、上記の関数式を教えて頂きました。ありがとうございます!
今後の習得のために記事化して理解を深めようと思います。
今回の関数式では3つの関数が用いられています。
ひとつずつ分解して理解していきます。
【1】FILTER関数
まず、FILTER関数で「列E「案分率」が100ではない案件名」を抽出します。
関数がどう作用しているかを可視化したく、セルG5に上記関数式を入力したのが以下のスクショです。
G5以降に抽出された案件名が返されました。
ただし元データの構造の通り、案件名は重複しています。
【2】UNIQUE関数
次にUNIQUE関数を用いて、一意の値のみ抽出します。
UNIQUE関数は指定した範囲の中で一意の値の一覧を返す関数です。
【3】COUNTA関数
最後にCOUNTA関数でくくると、案件数をカウントすることができます。
[参考メモ]COUNT系の関数の違い
COUNT系の関数は「COUNT」「COUNTA」「COUNTBLANK」と幾つもあり、さらに「COUNTIF」「COUNTIFS」なども含めると混乱しがちです。
ここでは「COUNT」「COUNTA」「COUNTBLANK」の違いを簡単にメモします。
※なお「COUNTA」では「スペース」もカウントする仕様になっていますのでその点留意しましょう。
(追記)
本記事公開後、Xでさらに便利な関数を教えて頂いたので記事にしました。併せてどうぞ。
この記事が気に入ったらサポートをしてみませんか?