📙

Googleスプレッドシート・Excelで重複排除した文字列をカウントする

2024/12/22に公開

はじめに

Excelやスプレッドシートで一覧表を管理している場合、同じユーザが複数行にあり重複排除してカウントしたいことがあると思います。
UNIQUE関数を使うことで出来ますので記事にします。

概要

  • UNIQUE関数の結果をCOUNTAします
    • 条件を付ける場合はFILTER結果をUNIQUEします
    • 連結セルを対象とした場合、空文字列は空文字のままで扱われる
      • Excelでは空文字列を0と扱われるため注意

やってみた

まずはサンプルデータです。各部署に扱うシステムがあり、それぞれ管理者とユーザがいる、という想定です。
it_admin@example.comなどは、あるシステムでは管理者で別システムではユーザになっている、ようなパターンがある。

部署,システム名,役割,連絡先メールアドレス
営業部,顧客管理システム,管理者,sales_admin@example.com
営業部,顧客管理システム,ユーザ,sales_user1@example.com
営業部,営業支援ツール,管理者,sales_manager@example.com
営業部,営業支援ツール,ユーザ,sales_admin@example.com
経理部,経費精算システム,管理者,accounting_admin@example.com
経理部,経費精算システム,ユーザ,accounting_user@example.com
経理部,財務管理システム,管理者,accounting_admin@example.com
経理部,財務管理システム,ユーザ,it_admin@example.com
IT部,サーバ管理システム,管理者,it_admin@example.com
IT部,サーバ管理システム,ユーザ,it_support@example.com
IT部,ネットワーク管理システム,管理者,it_admin@example.com
IT部,ネットワーク管理システム,ユーザ,accounting_admin@example.com
総務部,勤怠管理システム,管理者,hr_admin@example.com
総務部,勤怠管理システム,ユーザ,hr_user@example.com
人事部,人事評価システム,管理者,hr_eval_admin@example.com

スプレッドシートで扱います。

重複排除

まずは重複排除です。UNIQUEを使うだけです。GoogleスプレッドシートのUNIQUEはExcelのスピルのような機能を持ち、該当する候補が複数ある場合、隣接セルに展開します。
下の写真の例だと、一つ目のセルのみ関数を指定しています。

上記をCOUNTAでカウントします。

UNIQUECOUNTAを同時に使うこともできます。

フィルタして重複排除

"管理者のメルアドのみ重複排除したい"という場合は、FILTERを使います。

カウントも同様にできます。

連結セルがある場合

人の目で見ることを優先して、連結セルでデータを一つにして扱うこともあるかと思います。
連結セルがある場合どうなるか確認します。

システム名をUNIQUEすると、連結セルの部分は空文字で出てきます。

それに対してCOUNTAを取ることでカウントできます。

おわりに

今回はスプレッドシートで重複排除してカウントする方法を紹介しました。
Excelで出来ることとほぼ同じことが可能ですので、かなり使い勝手がよさそうです。

この記事がどなたかのお役に立てれば幸いです。

Discussion