スプレッドシートでのCOUNTIF関数の使い方
表計算のCOUNTIF関数は、特定の条件に基づいてセルをすばやくカウントする強力なツールです。売上データの分析、在庫管理、その他セルをカウントする必要がある作業を行う場合でも、COUNTIFを使えば、条件を満たすセルを効率的に集計することができます。
COUNTIF関数とは?
スプレッドシートのCOUNTIF関数は、特定の基準や条件を満たす範囲内のセルの数を数えます。COUNTIFを使用して、数値、日付、テキスト、文字、または空白を含むセルを数えることができます。
COUNTIF関数の構文:=COUNTIF(範囲, 基準)
• 範囲(range):カウントするセルのグループ。
• 基準(criteria):どのセルをカウントするかを決定する条件。数値、文字、テキスト文字列、セル参照、または式。
注:COUNTIFは単一の基準を使用する。複数の条件を使用する必要がある場合は、COUNTIFS 関数を使用できます。
表計算ソフトでのCOUNTIFの使用例
例1:COUNTIFの大なり小なり
セルC2からC12に売上高のリストがあり、売上高が10,000を超える回数を数えたいとする。
数式 =COUNTIF(B2:B12,">10,000")を入力すると、7という結果が得られます。
プロのヒント:セル参照との比較
セル参照と比較する場合は、演算子を引用符で囲み、セル参照の前にアンパサンド(&)を付けます。たとえば、セル B15 に保存された目標値を超える売上を数えるには、次の数式を使用します:=COUNTIF(B2:B12,">"&B15)。結果は4となります。
例2:完全一致文字列のCOUNTIF
上記の質問に続いて、Williamが成約した案件の数を数えたいとします。セル A2 から A12 に名前のリストがあり、このリストに "William" という名前が何回現れるかを数えたいとします。
数式 =COUNTIF(A2:A12, "william")を使う。これは、範囲A2:A12で文字列 "william"に正確に一致するセルの数を数える。結果は3である。
注:COUNTIF関数は大文字と小文字を区別しないので、"william"と "WILLIAM "は同じとみなされる。
例3:ワイルドカード文字を使った文字列のCOUNTIF
ワイルドカードを使用すると、テキスト値内で柔軟なマッチングが可能になります。条件にワイルドカード文字を使用すると、特定の単語、語句、文字を含むセルをカウントできます。
注:ワイルドカードはテキスト値でのみ機能し、数値には適用されません。
アスタリスク (*)
アスタリスク (*) は、任意の連続したテキスト文字にマッチします。これは、セル内の位置に関係なく、特定の単語や語句を含むセルをカウントしたい場合に特に便利です。
例:顧客からのコメントのデータセットがあり、「不満」(dissatisfied)という単語を含むコメントの数をカウントしたいとします。数式を使うことができる:
=COUNTIF(A2:A7,"*dissatisfied*")という数式が使える。
この数式は、範囲A2:A7内のセルのどこかに"dissatisfied"という単語を含むセルをすべてカウントする。アスタリスクは、"dissatisfied"の前後にある任意のテキスト文字の並びを許容する。結果は2となる。
プロのヒント:テキストで始まるまたは終わるセルを数える
セルに含まれる他の文字の数に関係なく、特定のテキストで始まる、または終わるセルをカウントしたい場合は、次のような数式を使用します:
=COUNTIF(Range,"Pro*")を使えば、"Pro"で始まるセルを数えることができます、"ing"で終わるセルを数えるには =COUNTIF(Range,"*ing")。
疑問符(?)
クエスチョンマーク(?)は、スペースを含む任意の1文字にマッチする。正確な文字数のセルを数えるのに便利である。
例:小売在庫のシナリオで、7文字の商品コードを求めているとします。数式 =COUNTIF(A2:A11, "????BL") を利用して、カラーバリエーションに基づく在庫を効率的に管理します。この場合、結果は4となる。
プロのヒント:リテラルクエスチョンマーク(?)またはアスタリスク(*)を含むセルをカウントするには、数式内のワイルドカード文字の前にチルダ(~)を使用してエスケープします。例えば、=COUNTIF(範囲, "*~?*")は、範囲内のクエスチョンマークを含むすべてのセルを数えます。
例4:空白セルと非空白セルのCOUNTIF
スプレッドシートでCOUNTIF関数を使うと、指定した範囲内の空または空でないセルの数を数えることができる。
空白でないセルのCOUNTIF
構文を使用する:=COUNTIF(範囲,"<>")
「<>」演算子は、スプレッドシートでは「~と等しくない」という意味なので、この数式は「何も等しくないセルを数える」という意味になる。この式は、指定された範囲内で、数値、テキスト、日付などの内容にかかわらず、何らかの値を含む空でないセルをすべて数えます。
プロのヒント:空の文字列を含むテキスト値を含む空白でないセルだけをカウントするには、=COUNTIF(range, "*")を利用する。これにより、数値や日付のような値を持つセルがカウントから除外されます。
空白セルのCOUNTIF
逆に、範囲内の空のセルをすべて数えるには、次の構文を使う:=COUNTIF(範囲,"")
注:COUNTBLANK関数もこの目的を果たすことができる。単に=COUNTBLANK(範囲)を使うだけで、=COUNTIF(範囲,"")と同じ結果が得られます。
しかし、COUNTIF関数もCOUNTBLANK関数も、数式が返す空文字列("")を空白でないものとして含めます。これは、計算式の結果をカウントする際に問題になることがあります。空文字列をカウントから除外するには、=COUNTIF(範囲, "<>") - COUNTIF(範囲, "") を使用します。あるいは、要件に応じてCOUNTAやSUMPRODUCTのような他の関数の使用を検討してください。
例5:日付のCOUNTIF
また、COUNTIFを使って日付データを分析することで、日付に関連する情報を効率的に追跡・管理することができます。
便利な公式をいくつか紹介しよう:
• 指定された日付に等しい日付を数える:=COUNTIF(範囲, "3/1/2024")
• 指定した日付以上の日付を数える:=COUNTIF(範囲,">=3/1/2024")
• 現在の日付に等しい日付を数える:=COUNTIF(範囲,TODAY())
• 現在の日付より前の日付を数える:=COUNTIF(範囲,"<"&TODAY())
• 1週間の期限日を数える:=COUNTIF(範囲,"="&TODAY()+7)
• 特定の日付範囲の日付をカウント:=COUNTIF(範囲,">=3/1/2024")-COUNTIF(範囲,">6/30/2024")
複数条件のCOUNTIF
COUNTIFは単一基準評価用に調整されている。2つ以上の基準に一致するセルをカウントするには、COUNTIFS関数を使用する必要があります。しかし、1つの計算式に複数のCOUNTIF関数を組み合わせることで、単純に複数基準のカウントを行うことができます。
例えば、10より大きく50より小さい値など、範囲内の2つの数値の間の値をカウントするには、=COUNTIF(範囲,">10")-COUNTIF(範囲,">=50")という数式を使うことができる。さらに、観光地リストで "London "と "Manchester "の出現回数をカウントするように、複数のOR条件を持つセルをカウントするには、=COUNTIF(range, "London")+COUNTIF(range, "Manchester")を使うことができる。
COUNTIFのベストプラクティス
1. 名前付き範囲を使う:毎回手動で範囲を選択する代わりに、名前付き範囲の使用を検討する。こうすることで、数式が読みやすくなり、エラーも減ります。名前付き範囲は、現在のワークシート、同じワークブックの別のワークシート、または別のワークブックから指定できます。参照先のワークブックが開いていることを確認してください。
プロヒント:名前付き範囲を作成する方法
• 方法1(最速):
(1) セルを選択する。
(2) 名前欄に名前を入力します。
(3) "Enter"を押す。
• 方法2:
(1) セルを選択する。
(2) "Formula"タブで"Name"を選択し、"Define Name"を選択する。
(3) ダイアログボックスで、範囲名、スコープ、リファレンスを設定し、詳細説明のためのコメントを追加する。
(4) 「OK」をクリックする。
2. 絶対参照を確認する:COUNTIF数式を他のセルにコピーするときは、範囲参照が絶対参照であることを確認してください(例えば、$A$1:$A$10)。
3. クライテリアを適切にフォーマットする:COUNTIFエラーを避けるために、criteria引数を引用符で囲み、適切なワイルドカードを使用する。
4. サンプル・データでテストする:大規模なデータセットにCOUNTIFを適用する前に、サンプルデータでテストし、その機能を検証し、望ましい結果が得られることを確認する。これにより、潜在的な問題を早期に発見することができます。
5. 数式を文書化する:数式を文書化することは、特に複雑な基準や広範なデータセットを扱う場合に、COUNTIF関数の背後にあるロジックを理解するのに役立ちます。また、問題が発生した場合のトラブルシューティングも容易になり、スプレッドシートの保守やデバッグが容易になります。
ヘルプが必要ですか?
サポートセンターをご覧いただくか、サポートチーム(helpdesk@kdanmobile.com)までお問い合わせください。
お問い合わせ
新着情報をフォローしてください。新製品情報とお得なキャンペーン情報をご案内します。