1. はじめに
実務でExcelを使っていると、「この条件に当てはまる日付だけ抽出したい」「特定の日付以降の件数を数えたい」といった場面がよくあります。
単体の関数だけでは対応できないケースも多く、複数の関数を組み合わせることがポイントになります。
本記事では、特に日付や条件を扱う場面でよく使われる関数の組み合わせ方を紹介します。
2. サンプルデータの例
以下のような売上データを例に考えてみましょう。
| 日付 | 部署 | 金額 |
|---|---|---|
| 2025/4/1 | 営業部 | 120000 |
| 2025/4/3 | 総務部 | 80000 |
| 2025/4/10 | 営業部 | 150000 |
| 2025/4/15 | 開発部 | 95000 |
| 2025/4/20 | 営業部 | 200000 |
| 2025/5/2 | 営業部 | 180000 |
| 2025/5/5 | 総務部 | 85000 |
この表をもとに、4月中の営業部の件数や金額を求めるなどの処理を考えていきます。
※ Excel表示

3. 日付を条件として扱う基本
Excelの日付はシリアル値(1900年1月1日を1とする通し番号)で管理されています。
そのため、比較演算子(>、<、>=など)を使うことで、次のように条件式を作成できます。
例:
=A2>=DATE(2025,4,1)
A2の日付が2025年4月1日以降ならTRUEを返します。
この考え方が、後述のCOUNTIFSやSUMIFSの条件式にも使われます。
4. 日付+条件を数える関数の組み合わせ
例1:特定の期間の件数を数える
=COUNTIFS(A:A,">="&DATE(2025,4,1), A:A,"<="&DATE(2025,4,30))
ポイント
COUNTIFSは複数条件を「すべて満たす」データをカウントします。"&DATE(…)"の形にすることで、関数の結果を条件文字列に結合できます。- この式では、A列の日付が「2025年4月1日以上かつ4月30日以下」のデータがカウントされます。
→ つまり、A列に入力された2025年4月中の行の件数(この例では5件)が返ります。
例2:特定の期間+部署の条件を数える
=COUNTIFS(A:A,">="&DATE(2025,4,1), A:A,"<="&DATE(2025,4,30), B:B,"営業部")
ポイント
- A列の日付が2025年4月中、かつB列の部署が「営業部」の行をカウントします。
- このサンプル表では、営業部の4月データが3件あるため、結果は 3 になります。
5. 金額を合計する場合
=SUMIFS(C:C,A:A,">="&DATE(2025,4,1),A:A,"<="&DATE(2025,4,30),B:B,"営業部")
ポイント
- A列で期間を指定し、B列で「営業部」を指定しています。
- C列の金額を合計するため、条件を満たした行の金額だけが合計対象になります。
- このサンプルでは
120,000+150,000+200,000=470,000 が返ります。
6. 日付を動的に扱う工夫
月が変わるたびに手動で日付を入力し直すのは手間です。
次のように関数を組み合わせると、「当月分だけ」自動で集計できます。
=SUMIFS(C:C,
A:A,">="&EOMONTH(TODAY(),-1)+1,
A:A,"<="&EOMONTH(TODAY(),0),
B:B,"営業部")
ポイント
TODAY()… 今日の日付を返すEOMONTH(TODAY(),-1)+1… 今月の初日EOMONTH(TODAY(),0)… 今月の末日- A列の日付が当月の範囲にある営業部データの金額(C列)が合計されます。
これにより、毎月の集計を自動化できます。
7. 月末が休日の場合の処理
金融業務などでは「月末が土日なら前営業日扱い」とするケースもあります。
=WORKDAY(EOMONTH(TODAY(),0)+1,-1)
ポイント
EOMONTH(TODAY(),0)+1… 翌月1日WORKDAY(...,-1)… そこから1営業日前(=月末の平日)を返す- 月末日が休日の場合でも、直前の平日の日付が自動的に返ります。
8. まとめ
- DATE関数+比較演算子で日付条件を作る
- COUNTIFS / SUMIFSで条件を組み合わせて集計
- TODAY・EOMONTH・WORKDAYを組み合わせて動的な日付処理を実現
これらを使いこなせば、毎月の報告書作成や営業実績集計を効率化できます。
「関数を組み合わせる発想」が、Excelを実務で使う上でのコツになります。
