Excel で 特定の期間内に入る金額や売上の合計 を求めたいときは、SUMIFS 関数 を使うのが基本です。開始日以上かつ終了日以下、あるいは月初以上かつ翌月初未満という形で条件を組み合わせると、任意期間の合計や月内合計を安定して計算できます。
この記事では、SUMIFS 関数で日付が期間内の合計を求める方法 を、すぐ使える式の形で整理します。特に、開始日と終了日を別セルで指定する方法、1か月分の合計を求める方法、今日以前・今日以後を合計する方法、日時付きデータで取りこぼさない考え方 を順番に説明します。
まず使う形
たとえば、B列に日付、C列に売上が入っていて、G3 に開始日、G4 に終了日を入れるなら、基本形は次のようになります。
=SUMIFS(C4:C11,B4:B11,">="&G3,B4:B11,"<="&G4)合計範囲が C4:C11、条件範囲が B4:B11 です。日付に対して 開始日以上 と 終了日以下 の 2 条件を同時にかけています。


開始日以上かつ終了日以下で合計する
もっとも汎用的なのは、開始日と終了日をそのまま条件に使う方法です。開始日が G3、終了日が G4 に入っているなら、次の式で期間内の合計を求められます。
=SUMIFS(C4:C11,B4:B11,">="&G3,B4:B11,"<="&G4)この形なら、G3 と G4 の値を変えるだけで集計期間を切り替えられます。売上、件数ではなく金額、作業時間、原価など、日付ごとに管理している数値なら同じ考え方で応用できます。
日時付きデータは「終了日以下」より「翌日未満」が安全
日付データに時刻が混ざる場合は、終了日以下 では取りこぼすことがあります。たとえば 2026/3/31 18:00 のような値は、終了日セルが単なる 2026/3/31 だと <=終了日 で外れることがあります。
=SUMIFS(C4:C11,B4:B11,">="&G3,B4:B11,"<"&G4+1)こうすると、終了日当日の 23:59:59 まで含めやすくなります。日付だけでなく日時を扱う売上データやログ集計では、この書き方の方が安全です。



1か月分の合計を求める
特定の月の合計を求めるときは、月初以上かつ翌月初未満 にすると扱いやすいです。G3 に年、G4 に月が入っているなら、次の式が基本です。
=SUMIFS(C4:C11,B4:B11,">="&DATE(G3,G4,1),B4:B11,"<"&DATE(G3,G4+1,1))この形なら、その月の最終日が 28 日でも 29 日でも 30 日でも 31 日でも、同じ考え方で合計できます。月末日を意識して式を書き換える必要がありません。


今日以前・今日以後の合計を求める
現在時点までの累計や、今日以後の予定金額を見たいなら、TODAY 関数 を組み合わせます。
今日以前の合計:
=SUMIFS(C4:C11,B4:B11,"<="&TODAY())今日以後の合計:
=SUMIFS(C4:C11,B4:B11,">="&TODAY())売掛金の残り、今後の入金予定、締切以降の予定原価など、日付基準で前後を分けたい場面に向いています。


よくあるミス
- SUMIF 1 本で期間条件をやろうとする
開始日と終了日の 2 条件が必要なら SUMIFS を使います。 - 比較演算子とセル参照をつないでいない
">="&G3の形が必要です。 - 終了日以下のつもりで日時付きデータを取りこぼす
日時データなら<終了日+1の形も検討します。 - 合計範囲と条件範囲の行数がずれている
C4:C11に対してB4:B10のようにすると結果が不正になります。 - 見た目は日付でも文字列になっている
正しく日付型になっているか確認してください。
SUMIF と SUMIFS の使い分け
| やりたいこと | 使う関数 | 理由 |
|---|---|---|
| 1つの条件だけで合計する | SUMIF | 式が短くて済む |
| 開始日以上かつ終了日以下で合計する | SUMIFS | 2条件を自然に書ける |
| 月内、週内、任意期間の合計を求める | SUMIFS | 範囲条件の組み合わせに向く |
単純な 1 条件だけなら SUMIF でもよいですが、期間内 のように前後 2 条件を同時に使うなら SUMIFS の方が分かりやすく、保守もしやすいです。
このテーマで既にある記事との違い
このページは 同一シート内の日付条件で合計する ことに絞っています。別シート参照やシート切替まで含めたい場合は、SUMIFSを別シートにまたがって使う方法 を見てください。件数を数えたい場合は、ExcelでCOUNTIFS関数を使って日付が期間内の件数を数える方法 の方が直接目的に合います。
関連記事
まとめ
SUMIFS 関数で日付が期間内の合計を求めるときは、開始日以上 と 終了日以下 を別条件で並べるのが基本です。月内合計なら 月初以上かつ翌月初未満、日時付きデータなら 終了日+1 未満 を意識すると、実務で崩れにくい式になります。
コメント