COUNTIFS関数で月別件数を集計|開始日と終了日から抽出
ここでは、エクセルの「COUNTIFS関数で開始日と終了日から月別の件数を集計する方法」を解説します。
使う関数はCOUNTIFS関数の1つだけですが、ポイントを押さえないと正しくカウントできません。
そのポイントを、できるだけ分かりやすく説明します。
1.まずはやりたいことを確認
始めに、やりたいことを例を含めて確認します。
1-1.COUNTIFS関数で月別の件数を集計したい
やりたいことは、「COUNTIFS関数で月別の件数を集計する」です。
なにかを始めた日(始まった日)と終えた日(終わった日)が入力されたデータをもとに、年月別にそれぞれ「該当する件数」をカウントします。
例えば、「セミナーの年月別の受講中の人数をカウントしたい」、「年月別の会員者数を知りたい」、などといった時に利用します。
1-2.例で確認
ひとつ例を見てみましょう。
上の表は、「一覧」シートに「セミナーの受講開始日と終了日をまとめたもの」です。受講者ごとに開始日が、人によっては終了日も入力されています。
次の表は、先ほどの表から「年月別の受講者数をカウントした結果」です。途中で終了した人や継続中の人もいるので、その点も考慮しながらカウントします。
このようなことができる数式を説明します。
2.数式の形と引数の指定の仕方
数式の形と引数の入れ方を確認します。
2-1.数式の形
数式の形は、次の通りです。
数式が長くて面倒そうですが、この後簡単な作り方を説明します。
2-2.引数の入れ方
入れる項目(引数)はたくさんありそうですが、実は3つだけです。
(1)開始日範囲
「開始日範囲」には、「元の表の開始日が入った範囲」を「絶対参照」で指定します。
絶対参照とは、「範囲指定後にF4キーを1回押す」となります(「$」マークが付くのが印です)。
例だと開始日範囲は、「$C$4:$C$11」となります。
(2)当月
「当月」には、「数えたい年月の1日付の日付」を入力します。
例だと、2022年1月の数を数えたい時には「A2」となります。
ちなみに、月別集計シートのA列の年月は「1日付」の日付を入力しており、表示形式で「〇年〇月」の形にしています。
(3)終了日範囲
「終了日範囲」には、「元の表の終了日が入った範囲」を「絶対参照」で指定します。
例だと開始日範囲は、「$D$4:$D$11」となります。
3.数式の作り方を確認
では、先ほどの表を使って数式を実際に作ってみます。
なお、集計表にひと手間加えると、数式のより簡単になるので、集計表の作り方にも触れます。
上が、カウントする「一覧」シートの表になります。
3-1.集計表を作成する
まずは、集計用のシートを作成します。
集計表作成時のポイントは、「各月を1日付にする」ことです。
例だとA列のことです。
まずは手入力(例:1/1)し、表示形式で「年月」の形にしましょう。
3-2.数式を作る
次に、数式を作ります。セルB2に数式を作った後、他のセルにコピーします。
以下手順です。
(1)以下の数式をコピーし、セルに貼り付ける
【コピーする数式】
(2)「開始日範囲」を消し、「元の表の開始日の入った範囲」を指定する
※ 範囲指定後「F4キー」を1回押します
※ 2ヶ所とも行います
(3)「当月」を消し、「数えたい日付の入ったセル」を指定する
※ 3ヶ所とも行います
(4)「終了日範囲」を消し、「元の表の終了日の入った範囲」を指定する
※ 範囲指定後「F4キー」を1回押します
※ 2ヶ所とも行います
(5)Enterキーを押す
(6)セルの右下にカーソルを当て、「+」になったら左ドラッグで下まで引っ張れば完了
例の場合、セルB2に入力した数式は次のようになります。
=COUNTIFS(一覧!$C$4:$C$11,"<"&EOMONTH(月別集計!A2,0)+1,一覧!$D$4:$D$11,">="&EOMONTH(月別集計!A2,-1)+1)+COUNTIFS(一覧!$C$4:$C$11,"<"&EOMONTH(月別集計!A2,0)+1,一覧!$D$4:$D$11,"")
ちょっと長いですが、作り方自体は簡単だと思います。
4.別のファイル上でカウントするとエラーに
ここまで紹介したCOUNTIFS関数は、一つ弱点があります。
それは「他のファイルに計算結果を表示させたい時には、元ファイルを開いていないとエラーになる」ことです。
もし表があるファイルとは別のファイルにカウント結果を出したい時には、別の関数を使う必要があります。
次のページでその方法を解説していますので、参考にしてください。
⇒ 開始日・終了日をもとに月毎の件数を別ファイルへ関数でカウントする方法へはこちら
以上、参考になれば幸いです。
【口コミ・評判のいいExcel本の紹介】