Google スプレッドシートの COUNTIFS 関数を徹底解説 – 複数条件のカウントを効率化

データ分析や業務効率化に欠かせないGoogle スプレッドシートには、様々な便利な関数が用意されています。今回は特に複数条件でのデータカウントに役立つ「COUNTIFS関数」について詳しく解説します。この関数をマスターすることで、複雑なデータ分析や集計作業が格段に効率化されるでしょう。

COUNTIFS関数とは

COUNTIFS関数は、複数の条件に基づいてセルをカウントする関数です。COUNTIF関数の拡張版と言えるもので、1つではなく複数の条件を指定できる点が大きな特徴です。データ分析において「AかつB」という条件でカウントしたいときに非常に便利です。

COUNTIFS関数の基本構文

=COUNTIFS(範囲1, 条件1, [範囲2, 条件2, ...])
  • 範囲1: 最初にチェックする範囲
  • 条件1: 範囲1に適用する条件
  • 範囲2, 条件2, …: 追加の範囲と条件(オプション)

重要なポイントは、すべての範囲は同じサイズ(行数と列数)でなければならないということです。異なるサイズの範囲を指定すると、#VALUE!エラーが表示されます。

COUNTIFS関数の基本的な使い方

実際の使用例を通して、COUNTIFS関数の基本的な使い方を見ていきましょう。

例1: テキスト条件によるカウント

不動産データを例に考えてみましょう。以下のようなデータがあるとします:

たとえば、「アパート」かつ「買手」の件数をカウントしたい場合:

=COUNTIFS(B2:B11,"Apartment",C2:C11,"Buyer")

この例では、B列に「Apartment」、C列に「Buyer」が同時に入っている行をカウントします。

例2: 数値条件によるカウント

数値データに対して条件を指定する場合も簡単です。例えば、「売手」かつ「40万ドル以上」の物件数をカウントしたい場合:

=COUNTIFS(C2:C11,"Seller",D2:D11,">400000")

数値条件で比較演算子を使用する場合は、必ず引用符で囲みます。使用できる比較演算子は以下の通りです:

  • > より大きい
  • >= 以上
  • < 未満
  • <= 以下
  • = 等しい
  • <> 等しくない

応用例: 複数条件を組み合わせた使い方

COUNTIFS関数の真価は複数条件を組み合わせたときに発揮されます。さらに複雑なケースを見ていきましょう。

例3: 同じ列に対する複数条件

同じ列に対して複数の条件を設定することもできます。例えば、40万ドルから60万ドルの間の物件数をカウントするには:

=COUNTIFS(D2:D11,">400000",D2:D11,"<600000")

この場合、各行のD列の値が40万ドルより大きく、かつ60万ドル未満である行数がカウントされます。

例4: 3つ以上の条件の組み合わせ

さらに条件を増やすこともできます。例えば、「アパート」かつ「40万ドル以上60万ドル未満」の物件数をカウントするには:

=COUNTIFS(B2:B11,"Apartment",D2:D11,">400000",D2:D11,"<600000")

このようにCOUNTIFS関数は、複数の条件を「AND(かつ)」条件で組み合わせることができます。

空白セルと非空白セルのカウント

データ分析では、空白のセルや入力されているセルを区別したい場合があります。COUNTIFS関数を使えば簡単に実現できます。

空白セルをカウント

特定の条件とあわせて空白セルをカウントする場合:

=COUNTIFS(B2:B11,"Apartment",C2:C11,"")

この例では、B列が「Apartment」であり、かつC列が空白である行をカウントします。

非空白セルをカウント

反対に、非空白セルをカウントしたい場合は:

=COUNTIFS(B2:B11,"Apartment",C2:C11,"<>")

B列が「Apartment」であり、かつC列が空白でない行がカウントされます。

OR条件(または)での使用

COUNTIFS関数はAND(かつ)条件でのカウントに最適ですが、OR(または)条件でカウントしたい場合は少し工夫が必要です。

例えば、「アパート」または「コンドミニアム」をカウントしたい場合、COUNTIFS関数ではうまくいきません:

=COUNTIFS(B2:B11,"Apartment",B2:B11,"Condo")

これはゼロを返します。なぜなら、セルの値が同時に「Apartment」と「Condo」になることはないからです。

OR条件の解決策

OR条件を実現するためには、複数のCOUNTIF関数を組み合わせます:

=COUNTIF(B2:B11,"Apartment") + COUNTIF(B2:B11,"Condo")

この方法で「アパート」または「コンドミニアム」の合計数をカウントできます。

ワイルドカードを使ったCOUNTIFS

テキストデータを扱う際に、部分一致や柔軟なテキストマッチングが必要な場合があります。COUNTIFS関数では以下のワイルドカードを使用できます。

アスタリスク(*)の使用

アスタリスクは0文字以上の任意の文字を表します。これは特定の単語やフレーズを含むテキストを検索するのに最適です。

例:

=COUNTIFS(A2:A100,"*John*")

この例では、「John」を含むすべての行(「John Doe」「Johnny」「Hello John」など)がカウントされます。

クエスチョンマーク(?)の使用

クエスチョンマークは1文字のみを表します。これはスペルのわずかな違いやフォーマットの違いに対応するのに便利です。

例:

=COUNTIFS(A2:A100,"J?hn")

この式は「John」や「Jahn」などの表記に一致する行をカウントします。

日付ベースの条件

COUNTIFS関数を日付と組み合わせることで、特定の期間内のデータをフィルタリングするのに役立ちます。

特定の日付範囲内のエントリをカウント

比較演算子(>=<=など)を使用して開始日と終了日を定義できます。

=COUNTIFS(A2:A100,">=01/01/2023",A2:A100,"<=12/31/2023")

この例ではA列の日付が2023年1月1日から2023年12月31日の間にある行数をカウントします。

特定の日付の前後のエントリをカウント

< または > を使用して、オープンエンドな日付条件を設定できます。

=COUNTIFS(A2:A100,"<01/01/2023")

この式はA列の日付が2023年1月1日より前の行数をカウントします。

COUNTIFS関数の実用例

COUNTIFS関数を実際のビジネスシーンでどのように活用できるか、いくつかの実用例を見ていきましょう。

1. 出席管理

特定の日付に出席した従業員の数をカウントする例:

=COUNTIFS(日付!A2:A100,"2023/01/10",出席!B2:B100,"出席")

2. 在庫管理

特定のカテゴリで在庫が少ない商品の数を特定する例:

=COUNTIFS(カテゴリ!A2:A100,"電子機器",在庫!B2:B100,"<10")

3. 売上分析

特定の地域で500ドルを超えた販売取引の数を調べる例:

=COUNTIFS(売上!A2:A100,">500",地域!B2:B100,"北")

COUNTIF関数とCOUNTIFS関数の違い

COUNTIFS関数を理解するには、COUNTIF関数との違いを知ることも重要です。

  • COUNTIF関数: 単一の範囲に対して1つの条件でカウントします。
    構文: =COUNTIF(範囲, 条件)
  • COUNTIFS関数: 複数の範囲に対して複数の条件でカウントします。
    構文: =COUNTIFS(範囲1, 条件1, 範囲2, 条件2, ...)

COUNTIF関数は単一条件の場合にシンプルで使いやすいですが、複数条件が必要な場合はCOUNTIFS関数が必須となります。

まとめ

COUNTIFS関数はGoogle スプレッドシートで複数条件に基づいてデータをカウントするための強力なツールです。この記事で紹介した基本的な使い方から応用例まで、様々なシチュエーションで活用できます。

特にビジネスシーンでは、複雑なデータ分析が求められることが多く、COUNTIFS関数を使いこなせるかどうかで業務効率に大きな差が生まれます。複数の条件を「かつ」で組み合わせるAND条件はもちろん、工夫次第で「または」のOR条件も実現できる柔軟性を持っています。

さらに、ワイルドカードや日付条件を組み合わせることで、より高度なデータフィルタリングが可能になります。ぜひこれらの技術を活用して、データ分析の質を向上させてください。効果的なデータ分析は、より良いビジネス判断につながります。

Dチームメルマガ登録|eBOOK「逆引きAIツールブック」プレゼント中


AIやマーケティングに関する情報を不定期配信中
eBOOK「逆引きAIツールブック」プレゼント中です
↓ ↓ ↓

Dチームメルマガはこちら>>>

 

ABOUT US
山田 どうそん
受講生3万人以上のオンライン講師|6年以上サブスクメンバーシップのコミュニティを運営|オンライン講師型の安定したコミュニティシステムの作り方を教えている|一人でも多くの人にオンライン講師になって物心両面の豊かさを手に入れられるようにスキル構築のサポートをしたい