月曜日の朝、経営会議用の資料作成で「営業1課の担当者のうち、成約金額が500万円を超えている案件数だけを至急出してほしい」と指示されたとき、膨大な売上データを目視で数え上げるのは現実的ではありません。15年以上、企業の経理や営業管理の現場でExcelと格闘してきた筆者の経験では、こうした「条件が重なるデータの集計」こそが、業務スピードと正確性を分ける最大の分岐点になります。日常的に数千行、数万行のデータを扱う実務家にとって、複数のフィルターを何度もかけ直す手間を省き、一瞬で答えを導き出すスキルは必須です。この課題を解決するための最も強力かつ汎用性の高い手段が、COUNTIFS関数を使いこなすことに他なりません。
- 実務でCOUNTIFS 複数条件 カウントが手放せない理由とその仕組み
- 数値データを範囲指定で絞り込む比較演算子の記述ルール
- 月次決算や四半期報告で必須となる「期間」の抽出テクニック
- 曖昧な商品コードや顧客名に対応するワイルドカードの活用法
- 集計表のメンテナンス性を維持するセル参照の結合術
- 予期せぬ集計ミスを防ぐためのエラー回避とデータクレンジング
- AND条件だけではない「複数条件の合算」を実現する応用数式
- ピボットテーブルとCOUNTIFSを使い分ける判断基準
- 大規模な売上データでも重くならないための計算効率化
- 部署別・役職別の人員構成を自動算出する管理フォーマットの構築
- 実務の正確性を担保するための最終検証プロセス
- 明日からの実務に取り入れるCOUNTIFS活用の3ステップ
実務でCOUNTIFS 複数条件 カウントが手放せない理由とその仕組み
COUNTIFS関数は、複数の条件をすべて満たす(AND条件)データの個数をカウントするための関数です。私が社内研修で講師を務める際、受講者が最も感動し、その後の業務が楽になったと報告をくれるのがこの関数でもあります。単一の条件を数えるCOUNTIF関数の拡張版ですが、実務においては「部署」かつ「役職」、「商品カテゴリー」かつ「在庫状況」など、複層的な視点でのデータ抽出が常に求められるため、COUNTIFS 複数条件 カウントのスキルはもはや事務職の標準装備と言えます。
引数のペア構造を正しく理解する重要性
COUNTIFS関数の書式は、=COUNTIFS(条件範囲1, 条件1, [条件範囲2, 条件2], ...) という構成です。ここで最も意識すべきは、Excelが「範囲」と「条件」を必ずセット(ペア)として処理している点です。研修で教えていると、初心者がつまずきやすいポイントとして「範囲だけを先に並べてしまう」ミスをよく見かけます。
例えば、=COUNTIFS(A2:A100, B2:B100, "営業部", "課長") と書いてしまうケースです。Excelは「どこを(範囲)」「何を(条件)」というペアで理解するため、正しくは =COUNTIFS(A2:A100, "営業部", B2:B100, "課長") と記述しなければなりません。この構造を「検索場所と検索対象のセット」と脳内で定型化しておくことが、ミスを防ぐ第一歩です。
COUNTIF関数との決定的な使い分け
「1つの条件ならCOUNTIFでいいのではないか」という質問をよく受けます。確かにその通りですが、実務のデータは生き物です。最初は「営業部の人数」だけで良くても、後から「その中で30代の人数」「さらにその中で主任以上の人数」と条件が追加されるのが常です。筆者の経験では、最初からCOUNTIFS関数を使って数式を組んでおけば、後からの条件追加が引数を増やすだけで済み、数式を書き換える手間が最小限に抑えられます。最初から「複数条件が来る可能性」を想定して動くのが、プロの管理業務のスタイルです。

参照整合性と範囲の不一致エラーへの対処
実務で「#VALUE!」エラーが出て相談に来る方の数式を見ると、ほとんどが「条件範囲1」と「条件範囲2」の行数がずれています。
ポイント: COUNTIFS関数で使用するすべての条件範囲は、必ず同じ行数・列数でなければなりません。例えば、1つ目の範囲が「A2:A100」なら、2つ目の範囲も必ず「B2:B100」のように、開始行と終了行を一致させる必要があります。
この範囲のズレは、行の挿入や削除を繰り返しているうちに発生しやすいため、後述する「テーブル機能」の活用が非常に有効な対策となります。
数値データを範囲指定で絞り込む比較演算子の記述ルール
売上管理や経費計算において、「〜以上」「〜未満」といった数値の範囲を条件にする場面は非常に多いです。経理の現場では、100万円単位での予算実績管理が日常茶飯事ですが、ここで比較演算子の使い方を誤ると、集計結果が1件ずれるといった致命的なミスにつながります。
比較演算子をダブルクォーテーションで囲む理由
COUNTIFS関数で「500以上」などの条件を指定する場合、">=500" のようにダブルクォーテーションで囲む必要があります。
=COUNTIFS(E2:E100, ">=5000000")
初心者がつまずきやすいポイントは、数式内で不等号(> や <)を直接入力しようとしてエラーになる点です。Excelの関数引数として比較演算子を渡す際は、文字列として認識させる必要があるため、この囲み処理が必須となります。筆者も新人の頃、このルールを忘れて「なぜ計算されないのか」と1時間以上悩んだ経験があります。
「以上」「以下」「より大きい」「未満」の厳密な使い分け
実務の集計において、境界線の扱いは極めてデリケートです。「100万円以上」は ">=1000000" ですが、「100万円を超える(100万円は含まない)」場合は ">1000000" となります。
経理部門の監査対応などで、「閾値ぴったりのデータが含まれているか」を問われることがあります。この際、不等号の使い分けが曖昧だとデータの信頼性が失われます。
– ">=":以上(その数を含む)
– "<=":以下(その数を含む)
- ">":より大きい(その数を含まない)
- "<":未満(その数を含まない)
- "<>":等しくない(その数を除外する)
この5つの記号を、キーボードのどの位置にあるかも含めて指に覚え込ませることが、集計作業のストレスを軽減します。

複数条件による「〜から〜まで」の範囲指定
「売上が100万円以上、かつ500万円以下」という数値範囲を指定する場合、同じ「売上金額」の列を2回条件範囲に指定します。
=COUNTIFS(E2:E100, ">=1000000", E2:E100, "<=5000000")
同じ範囲を繰り返して指定することに違和感を覚える方もいますが、これがCOUNTIFSにおける範囲指定のスタンダードな手法です。このテクニックは、在庫管理で「適正在庫数(下限〜上限)に収まっている品目数」を出す際にも非常に役立ちます。
月次決算や四半期報告で必須となる「期間」の抽出テクニック
日付データの集計は、Excel実務の中でも最も頻度が高く、かつミスが起こりやすい領域です。会計年度の区切りや、特定キャンペーン期間中の受注件数など、正確な日付指定が求められるシーンは数多く存在します。
日付を直接指定する際の正しい記述形式
数式内に日付を直接書き込む場合も、数値と同様にダブルクォーテーションで囲みます。
=COUNTIFS(A2:A100, ">=2026/4/1", A2:A100, "<=2026/4/30")
このとき、日付の区切り文字は /(スラッシュ)を使用するのが一般的です。Microsoft公式サイトでも、日付を条件として使用する際の書式について、システムの地域設定に依存する点を含めて注意を促しています。
参照:Microsoft公式サイト(COUNTIFS 関数)
月初・月末を自動で判定するための工夫
毎月のレポート作成において、いちいち数式内の日付を書き換えるのは非効率です。筆者が実務で推奨しているのは、EDATE関数やEOMONTH関数との組み合わせ、あるいはセル参照の活用です。
特に「今月の受注件数」を出す場合、TODAY() 関数を組み合わせて動的に期間を設定することも可能ですが、後から過去のデータを振り返る際に数字が変わってしまうリスクがあります。そのため、報告書用のシートには必ず「集計開始日」と「集計終了日」を入力するセルを設け、そこを参照する形式にすべきです。
年度またぎや四半期集計での注意点
日本の会計慣習では4月始まりが多いため、カレンダー通りの集計とは異なるロジックが必要になります。「第1四半期(4月〜6月)」の集計を行う際、条件範囲に指定する日付がシリアル値(数値)として正しく認識されているかを確認してください。
注意点: セルに「2026年4月」と文字列で入力されている場合、日付としての比較(>= など)が正しく機能しません。見た目が日付でも中身が文字列になっているケースは、他システムからエクスポートしたデータによく見られる「失敗あるある」です。
データの型がシリアル値であることを確認するには、セルの表示形式を「数値」に変えてみて、46113のような数字が表示されるかチェックするのが現場の知恵です。

曖昧な商品コードや顧客名に対応するワイルドカードの活用法
実務で扱うデータは、常に整っているわけではありません。商品名の後ろに余計な枝番が付いていたり、顧客名が略称で入力されていたりと、完全一致ではカウントできない場面が多々あります。こうした「表記揺れ」や「部分一致」を処理するために欠かせないのがワイルドカードです。
アスタリスク()による部分一致検索の定石
ワイルドカードの中で最も多用されるのが (アスタリスク)です。これは「0文字以上の任意の文字列」を意味します。
- "株式会社":株式会社で始まるデータ(前方一致)
- "支店":支店で終わるデータ(後方一致)
- "システム":名前に「システム」を含むデータ(部分一致)
例えば、顧客リストから「東京都の顧客」を数えたい場合、住所列に対して "東京都" と指定すれば、新宿区や渋谷区などの詳細に関わらずカウントできます。
疑問符(?)を使った特定の文字数の指定
アスタリスクほど頻用はされませんが、?(疑問符)も非常に有用です。これは「任意の1文字」を意味します。
例えば、商品コードが「A-」で始まり、その後に3文字の数字が続くルールがある場合、"A-???" と指定することで、4文字や2文字のイレギュラーなコードを除外してカウントできます。
型番管理が厳格な製造業や物流部門の現場では、この文字数指定がデータクリーンネスを保つための強力な武器になります。
ワイルドカード自体を検索する方法(エスケープ処理)
実務では、データの中に「」や「?」自体が含まれていることがあります。例えば「備考欄に (アスタリスク)印が付いている件数」を数えたい場合です。
この場合、記号の前に ~(チルダ)を付けて "~" と記述します。これを知らないと、すべてのデータがワイルドカードとして認識されてしまい、集計が成立しません。こうした細かいテクニックこそが、社内研修で「そんな方法があったのか」と驚かれるプロのノウハウです。

集計表のメンテナンス性を維持するセル参照の結合術
数式の中に直接 "営業部" や ">=1000" と書き込む(ハードコーディングする)のは、急ぎの作業では便利ですが、長期的には「負の遺産」になりかねません。条件が変わるたびにすべての数式を修正するのは時間の無駄であり、修正漏れによるミスの原因になります。
演算子とセル番地を「&」で繋ぐ作法
セルに入力された数値を条件にする場合、比較演算子とセル参照を結合させる必要があります。
=COUNTIFS(D2:D100, ">=" & F1)
ここで、">=" という演算子部分はダブルクォーテーションで囲み、セル番地の F1 は囲まない、というルールが重要です。そしてその間を &(アンパサンド)で結びます。
研修で教えていると、">=F1" と書いてしまうミスが後を絶ちませんが、これでは「F1という文字以上のデータ」を探してしまい、意図した数値比較になりません。
条件入力欄を設けたダイナミックな集計シートの設計
筆者が企業の管理フォーマットを設計する際は、必ずシートの上部に「条件入力エリア」を設けます。
1. セルB1に「部署名」
2. セルB2に「売上閾値」
3. セルB3に「開始日」
このように条件を外出しにし、COUNTIFS関数の引数ですべてこれらのセルを参照するように設定します。これにより、ユーザーは数式を一切触ることなく、条件を変えるだけで瞬時にレポートを更新できるようになります。これが、誰でも使える「壊れにくいExcelシート」を作るコツです。
ドロップダウンリストとの組み合わせによる操作性向上
条件入力セルに「データの入力規則」を設定し、ドロップダウンリスト(プルダウン)から選択できるようにすると、さらに利便性が高まります。
「営業1課」を「営業1課(全角)」と入力ミスしてしまい、COUNTIFSの結果が0になってしまうといったトラブルを未然に防ぐことができます。実務の現場では、数式の正しさよりも「入力データの不備」で集計が止まることの方が圧倒的に多いため、こうしたUIの工夫が不可欠です。
予期せぬ集計ミスを防ぐためのエラー回避とデータクレンジング
「数式は完璧なのに、なぜか数字が合わない」——これはExcel実務者が最も恐れる事態です。COUNTIFS 複数条件 カウントにおいて、正しくカウントされない原因の多くは、数式ではなく「データそのもの」に潜んでいます。
見えない「スペース」が引き起こすカウント漏れ
集計が合わない最大の原因は、セル内のデータの前後に入っている「半角・全角のスペース」です。
"田中" と "田中 "(後ろにスペースあり)は、人間には同じに見えますが、Excelにとっては全く別のデータです。特に他システムからダウンロードしたCSVデータには、この余計なスペースが紛れ込んでいることが非常に多いです。
対策として、集計前に TRIM関数 を使ってデータを掃除するか、COUNTIFSの条件にワイルドカードを組み合わせて "" & F1 & "" のように遊びを持たせる手法があります。
「数値」と「文字列として保存された数値」の混在
経理の現場でよく見かけるのが、数字が左揃え(文字列)になっているケースです。COUNTIFSで ">=1000" と指定しても、セル内の1000が文字列型であれば、数値比較の対象外となりカウントされません。
注意点: セルの左上に緑色の三角マークが出ている場合、その数値は文字列として保存されています。範囲を選択して「数値に変換」を実行するか、一括で1を乗算して数値型に強制変換するなどのクレンジングが必要です。
筆者の経験では、このデータ型の不一致だけで、数時間の残業が発生してしまうケースを何度も見てきました。
循環参照や不適切な範囲指定によるエラー
数式を入力しているセル自体を集計範囲に含めてしまう「循環参照」は、COUNTIFSでも起こり得ます。また、行全体(A:A)を指定すると計算負荷が高まり、ファイルが重くなる原因になります。実務では A2:A10000 のように余裕を持った具体的な範囲を指定するか、動的に範囲が広がる「テーブル機能」を使用することを強く推奨します。

AND条件だけではない「複数条件の合算」を実現する応用数式
COUNTIFS関数は基本的に「かつ(AND)」の条件ですが、実務では「営業部、または総務部」といった「または(OR)」の条件でカウントしたい場面も多々あります。これを1つの数式でスマートに解決する方法があります。
SUM関数と配列定数を組み合わせたOR条件の記述
「営業部」または「経理部」のいずれかに該当する人数を数える場合、素直に書くと =COUNTIFS(範囲, "営業部") + COUNTIFS(範囲, "経理部") となりますが、条件が増えると数式が非常に長くなってしまいます。
そこで、以下のような書き方を使います。
=SUM(COUNTIFS(A2:A100, {"営業部","経理部"}))
条件を {}(中括弧)で囲むことで、Excel内部で「営業部の場合のカウント」と「経理部の場合のカウント」が同時に行われ、最後に SUM関数 でそれらを合計します。これはMicrosoft 365やExcel 2021以降の「スピル」機能が備わったバージョンで特に威力を発揮する、洗練された手法です。
複数列をまたぐ複雑な論理構造の作り方
「部署が営業部」かつ「(役職が課長 または 主任)」といった、ANDとORが混在するケースも実務では頻出します。
この場合、先ほどの配列定数を組み合わせて以下のように記述します。
=SUM(COUNTIFS(A2:A100, "営業部", B2:B100, {"課長","主任"}))
この1行で、複雑な条件分岐を一瞬で処理できます。筆者がこの数式を教えると、多くの実務家が「今までの足し算は何だったのか」と驚きますが、数式の可読性を高めることは、自分以外の人間がファイルを触る際のメンテナンス性にも直結します。
否定条件「〜ではない」を組み合わせた除外集計
「全社員のうち、営業部以外で、かつ未入社の内定者を除外してカウントしたい」といった除外条件には、"<>" を使用します。
=COUNTIFS(部署範囲, "<>営業部", 状態範囲, "<>内定")
このように、特定の要素を引いていく集計も、COUNTIFSなら引数を並べるだけで実現可能です。特定のカテゴリーを除いた「その他」のボリューム感を把握する際に重宝します。
ピボットテーブルとCOUNTIFSを使い分ける判断基準
Excelには集計機能として「ピボットテーブル」という非常に強力なツールが存在します。COUNTIFS関数とピボットテーブル、どちらを使うべきか迷うという相談を研修でよく受けますが、15年の実務経験から導き出した明確な基準があります。
COUNTIFSを使うべき「定型レポート」のシーン
毎月同じフォーマットで出力する月次報告書や、特定のセルに結果を表示させたいダッシュボード形式のシートでは、COUNTIFS関数が圧倒的に有利です。
- レイアウトが固定されている
- 他の計算式(粗利計算など)と複雑に連携している
- 入力データが変わるたびにリアルタイムで数字を更新したい
これらのケースでは、関数の「自動更新性」と「レイアウトの柔軟性」が活きます。
ピボットテーブルが適している「探索的分析」のシーン
一方で、データの全体像を把握したり、様々な切り口で集計し直したりする「分析」のフェーズでは、ピボットテーブルに軍配が上がります。
- データの傾向をざっくり掴みたい
- 条件を頻繁に入れ替えて試行錯誤したい
- 数万行を超える極めて巨大なデータを扱う
ピボットテーブルは「再計算」というステップが必要ですが、ドラッグ&ドロップで集計条件を変えられるスピード感は、関数にはない強みです。
両者を組み合わせた「最強の管理表」の作り方
筆者が推奨するのは、ピボットテーブルでデータの整合性をチェックし、最終的なアウトプット用の表をCOUNTIFSで整える「ハイブリッド型」です。
例えば、ピボットテーブルで部署ごとの合計人数が100人であることを確認し、作成したCOUNTIFSの集計シートの合計も100人になっているか照合します。これにより、数式の範囲指定ミスや条件漏れを確実に防ぐことができます。実務のプロは、一つの方法に固執せず、複数の手段で「数字の裏付け」を取るものです。

大規模な売上データでも重くならないための計算効率化
Excelファイルが重くなり、開くのに数分かかる、スクロールがカクつく——。こうした問題の原因が、実は大量に埋め込まれたCOUNTIFS関数であることも少なくありません。特にMicrosoft 365以前のバージョンを使用している環境では、計算負荷への配慮が必要です。
列全体参照(A:A)のメリットとデメリット
=COUNTIFS(A:A, "営業部", ...) のように列全体を指定すると、データの増減に対応できるため便利ですが、Excelは「104万行すべて」をスキャンしに行きます。これが数千個のセルに入っていると、動作は劇的に重くなります。
実務で推奨されるのは、前述の「テーブル機能」を使って =COUNTIFS(テーブル1[部署], "営業部") のように記述することです。テーブル機能を使えば、データが存在する範囲だけを自動的に計算対象にしてくれるため、スピードと利便性を両立できます。
計算方法を「手動」に切り替える一時的な回避策
どうしてもファイルが重い場合、[数式]タブから[計算方法の設定]を「手動」に切り替えることで、入力のたびに発生する再計算を止めることができます。
ただし、これは諸刃の剣です。再計算を忘れたまま数値を報告してしまい、誤ったデータを出してしまうというミスが多発します。
ポイント: 計算方法を「手動」にしているときは、ステータスバーに「再計算」と表示されます。保存前や印刷前には必ず「F9」キーを押して最新の状態に更新する癖をつけましょう。
作業列(ヘルパー列)を活用した計算の分散
COUNTIFSにあまりにも複雑な条件を詰め込みすぎると、数式の解読も計算も困難になります。
そのような場合は、元データの方に =IF(AND(条件1,条件2), 1, 0) といった「フラグ列」を作成し、COUNTIFSではその列の 1 を数えるだけにするという手法も有効です。一見遠回りに見えますが、計算の透明性が上がり、結果としてエラーの早期発見につながります。
部署別・役職別の人員構成を自動算出する管理フォーマットの構築
ここでは、人事・総務部門で実際に使われている「人員構成表」を例に、COUNTIFS関数をどのように実務に組み込むか、具体的なステップを解説します。
ステップ1:元データ(名簿)をテーブル化する
まず、社員名、部署、役職、入社日などが並んだ名簿範囲を選択し、Ctrl + T でテーブルに変換します。名前を「社員名簿」に変更しておきます。これにより、新入社員が下に追加されても、自動的に集計範囲が拡張されます。
ステップ2:集計用のクロス表(マトリックス)を作成する
別のシートに、縦軸に「部署名」、横軸に「役職名」を並べた表を作成します。
この表の交点(例えば「営業部」かつ「課長」のセル)に数式を入力します。
ステップ3:複合参照を駆使した一括コピー
ここで、数式を一つずつ入力するのは非効率です。
=COUNTIFS(社員名簿[部署], $A5, 社員名簿[役職], B$4)
このように、部署名の列を固定する $A5(列絶対参照)と、役職名の行を固定する B$4(行絶対参照)を組み合わせることで、一つの数式を右と下にオートフィル(コピー)するだけで、表全体の集計が完了します。
ステップ4:異常値の可視化と条件付き書式
集計された表に対して「条件付き書式」を設定し、例えば「管理職が0名の部署」を赤く染めるなどの設定を加えます。COUNTIFSで算出された数字が「見える化」されることで、単なる数字の羅列が「意思決定のための資料」へと昇華します。筆者の研修では、ここまでセットで教えることで、受講者が現場の課題解決に直結するイメージを持てるようにしています。

実務の正確性を担保するための最終検証プロセス
どれだけExcelに精通していても、人間である以上ミスはゼロにはなりません。特にCOUNTIFSのような集計関数は、間違った数字が出てもエラー(#VALUE!など)にならず、単に「誤ったカウント数」を返してくるため、ミスに気づきにくいという性質があります。
「全体の合計」と「内訳の合計」の一致確認
最も基本的かつ強力な検証方法は、全体の総数と、COUNTIFSで出した各項目の合計を照合することです。
例えば、部署別の人数をすべて足したときに、元の名簿の総行数と一致するかを確認します。もし1件でもズレていれば、条件の指定漏れ(例:新設部署が漏れている)や、前述のスペース問題によるカウント漏れが発生している証拠です。
フィルター機能によるサンプルチェック
数式の結果が正しいか不安なときは、元データの表で「オートフィルター」を使い、同じ条件で絞り込んでみます。左下のステータスバーに「100件中25件見つかりました」と表示されれば、COUNTIFSの結果が「25」であることを確認できます。
すべてのセルをチェックする必要はありませんが、主要な項目を数箇所サンプリングするだけで、数式の信頼性は飛躍的に高まります。
第三者が数式をチェックするための「可読性」の確保
自分にしかわからない複雑な数式は、実務においては「リスク」です。
Alt + Enter を使って数式内で改行を入れ、引数ごとに整理するなどの工夫をしましょう。
=COUNTIFS(
条件範囲1, 条件1,
条件範囲2, 条件2
)
このように記述することで、後任者や上司が数式を検証する際の負荷を大幅に軽減できます。「他人が読める数式を書く」ことは、プロのExcelユーザーとしての最低限のマナーであり、自分を守るための防御策でもあります。
明日からの実務に取り入れるCOUNTIFS活用の3ステップ
15年にわたりExcel実務と教育に携わってきた立場から、COUNTIFS関数を真にマスターし、業務を効率化するためのエッセンスを改めて整理します。この関数は単なる「個数を数える道具」ではなく、複雑なデータを整理し、意味のある情報へと変えるための思考ツールです。
データの「型」と「クリーンネス」を意識する:集計前に、スペースの除去や数値形式の確認を行うことが、エラーを未然に防ぐ最善の策です。
「範囲」と「条件」のペアを視覚的に捉える:数式を組む際は、常に引数が正しいセットになっているかを脳内でチェックし、範囲の不一致を避けます。
* メンテナンス性を考慮したシート設計を行う:数式内に条件を書き込まず、セル参照とテーブル機能を活用して、変化に強い柔軟なフォーマットを目指します。
実務の現場では、1分の短縮が1日の余裕を生み、その余裕がミスのない正確な仕事へとつながります。今回解説したテクニックを、まずは身近な売上管理表や名簿の集計から試してみてください。最初は戸惑うかもしれませんが、一度指が覚えれば、膨大なデータに立ち向かう際の最高のパートナーになってくれるはずです。

参照:Microsoft公式サイト(Excel 関数の検索)


コメント