「COUNTIFS関数を使って期間指定した範囲のデータ件数を数える方法」について詳しく解説します。
売上管理などのデータをスプレッドシートで管理している場合、指定した日付ごとにデータの件数を数える必要がある場面がたくさんあると思います。
また、Googleフォームとスプレッドシートを連携した際には、タイムスタンプ・日付などを指定した期間でデータの件数を数えたいと考えている方も多いのではないでしょうか?
同じ悩みをお持ちの方々に、分かりやすく具体的な例を交えながら解説したいと思います。
- COUNTIFS関数を使って指定した期間のデータ件数を数える
- 日付を指定する際の注意点
使用するスプレッドシート
今回説明のために、以下のようなスプレッドシートを準備しました。

日付を数式に直接入力する
日付を直接入力する場合の参考式です。
ここでは日付が「2023/1/1」、製品名が「みかん」のデータ件数を数えます。
=COUNTIFS(A2:A21,“2023/1/1”,C2:C21,“みかん”)
=COUNTIFS(A2:A21,"2023/1/1",C2:C21,"みかん")
条件に合うのは2行だけなので、「2」と計算されました。

よく間違えるのが「“”(ダブルクオーテーション)」を忘れてしまうパターンがあります。
忘れないように入力してください。
「””(ダブルクオーテーション)」を忘れる
セルに入力した日付の値を参照する
日付を直接数式に入力する代わりに、別のセルに日付を入力し、それを参照する方法もあります。
=COUNTIFS(A2:A21,E5,C2:C21,“みかん”)
=COUNTIFS(A2:A21,E5,C2:C21,"みかん")

期間指定内のデータ件数を数える
指定した期間内のデータ件数を取得する場合は「不等号(<)」を使用します。
式内に日付を入力する場合
=COUNTIFS(A2:A21,“>=2023/1/1”,A2:A21,“<=2023/6/19”,C2:C21,“みかん”)
=COUNTIFS(A2:A21,">=2023/1/1",A2:A21,"<=2023/6/19",C2:C21,"みかん")
指定した期間は「2023/1/1」から「2023/5/19」内の「みかん」という製品のデータ件数を数えました。
該当するのは「3」という件数となれば成功です。

ポイントは『””(ダブルクオーテーション)内に不等号を入れる』ことです。
よく見かけるミスとして、以下の4点があるので注意してください。
””(ダブルクオーテーション)を忘れる
””(ダブルクオーテーション)の外に不等号をつける
不等号を日付の後ろにつけている
不等号が逆
セルに入力された日付を参照する
一番使うであろう「セル内の日付」を検索する場合は以下の式になります。
=COUNTIFS(A2:A21,“>=”&H1,A2:A21,“<=”&H2,C2:C21,H3)
=COUNTIFS(A2:A21,">="&H1,A2:A21,"<="&H2,C2:C21,H3)
「2023/1/1」から「2023/10/30」までのみかんのデータ件数を数えました。
該当するのが4つあるので、「4」と出力されます。

ポイントは2つです。
- 不等号(>=)を””で囲む
- セルを&(アンド)でつなげる
よくやってしまうミスが以下の2点なので注意してください。
『&』を忘れる
『&』も『””』を忘れる
EOMONTH関数を使って月ごとの計算をする
EOMONTH関数を使うと、月の初めから末日までの期間を指定することができます。
EOMONTH関数とは入力した日付の前、または後ろの月の最終日を求めることが出来ます。
具体例を見せたほうが早いと思うので、以下を参照してください。
月始め
=EOMONTH(H1,-1)+1
月末
=EOMONTH(H1,0)
COUNTIFSの集計
先程説明した『セルに入力された日付を参照する』と同じように
=COUNTIFS(A2:A21,”>=”&H2,A2:A21,”<=”&H3,C2:C21,H4)
=COUNTIFS(A2:A21,">="&H2,A2:A21,"<="&H3,C2:C21,H4)

日付を入力する「H1セル」の月初と月末をEOMONTH関数で計算し、その範囲内のデータ件数を数えることが出来ました。
ひとつの関数内にまとめて月ごとの計算をする
複数の期間を一度に数える場合、COUNTIFS関数を使ってひとつの式にまとめることも可能です。
=COUNTIFS(A2:A21,“>=”&EOMONTH(H1,-1)+1,A2:A21,“<=”&EOMONTH(H1,0),C2:C21,H2)
=COUNTIFS(A2:A21,">="&EOMONTH(H1,-1)+1,A2:A21,"<="&EOMONTH(H1,0),C2:C21,H2)
マーカーを引いた箇所に先程のEOMONTH関数を入れて、不等号を『&』で結びます。
これで「H1」に入力された日付の月初と月末のデータ件数が求められます。

以上がCOUNTIFS関数を使って期間指定内のデータ件数を数える方法でした。
覚えておくと便利な『絶対参照』
最後に覚えておくと便利な絶対参照についてご紹介します。
製品ごとのデータ件数をまとめて出したいときがあります。
ですがそのままコピペしてしまうと、スプレッドシートの参照先がズレてしまいます。
この時に使ってほしいのが絶対参照です。
「$(ダラーマーク)」と呼ばれる記号を付けてあげることで、指定した範囲をコピペした際にずれることを防いでくれます。
=COUNTIFS($A$2:$A$21,”>=”&$H$1,$A$2:$A$21,”<=”&$H$2,$C$2:$C$21,G6)
=COUNTIFS($A$2:$A$21,">="&$H$1,$A$2:$A$21,"<="&$H$2,$C$2:$C$21,G6)
キーボードの「F4」キーを押せば簡単に絶対参照にすることが出来ます。
ぜひ使ってみてください。
まとめ
COUNTIFS関数を使って期間指定した日付範囲のデータ件数を数える方法を詳しく解説しました。
スプレッドシートで日付のデータ処理を行う際には、これらの方法を活用して効率的にデータ件数を数えましょう。
以下の記事に、期間指定したスプレッドシートの活用事例を載せていますので参考にしてください。
以上、ごすけでした。