シート実務ラボ

Excel・スプレッドシートの「動かして確かめた」実務ガイド

ホーム > 日付の列から月別に合計を出す方法(SUMIFSとSUMPRODUCT、年をまたぐ注意点)【LibreOfficeで計算して確認】

2026-10-14 ・ Excel関数

日付の列から月別に合計を出す方法(SUMIFSとSUMPRODUCT、年をまたぐ注意点)【LibreOfficeで計算して確認】

日付と金額を1行ずつ並べた表から、「2026年4月の合計はいくら?」を出したい場面は多いはずです。この記事では、日付の列から指定した年月の合計を出す式を2通り紹介し、「月」だけで集計すると別の年が混ざるという落とし穴を、実際に計算して確かめた結果で示します。

出典: 筆者がLibreOfficeで計算して確認(検証スクリプト: site/verify/month_sum.py)。外部サイトの説明は参照していません。Excelでは未確認です。本番の表に使う前に、数行で結果を確かめてください。

先に結論

式の意味

SUMIFSの式は、「日付が当月1日以上、かつ翌月1日未満」の行だけを合計しています。DATE(D1,E1,1) は年月から1日の日付を作り、EDATE(…,1) はその1か月後の日付です。月末の日数(28日か31日か)を気にしなくてよいのが利点です。

SUMPRODUCTの式は、各行の年と月を取り出して一致する行の金額を足しています。どちらも結果は同じでしたが、SUMIFSのほうが式が短く、読みやすいと感じます。

実際に計算した結果

2025〜2026年の日付をランダムに60行並べた表と、境界の日付を入れた8行の表で、指定した年月の合計を3種類の式で出しました。

境界の表は次のとおりです。

日付 金額
2026-04-01 100
2026-04-30 200
2026-05-01 400
2026-03-31 800
2024-02-29 1,600
2025-02-28 3,200
2026-12-31 6,400
2027-01-01 12,800

結果の一部です。

集計する年月 式1・式2(年も見る) 式3(月だけ)
2026年4月 300 300
2026年5月 400 400
2026年1月 0 12,800
2026年2月 0 4,800
2025年2月 3,200 4,800
2024年2月 1,600 4,800

2026年4月は、月初の4/1(100)と月末の4/30(200)の両方が入り、合計300で正しく出ました。翌日の5/1(400)は4月に混ざりません。

一方、式3(月だけ)では、2026年1月が「0」ではなく12,800になりました。 これは2027年1月1日の金額です。2月も、2024年のうるう日(2/29)と2025年(2/28)の金額が合算され、どの年を指定しても4,800になりました。

2026年1月〜12月と2025年2月・2024年2月の計14か月分で、式1・式2は期待値と全件一致しました。60行の表と合わせた28件の集計すべてで不一致0件です。月だけで集計した場合に年の違いで結果が変わった月は、28件中16件ありました。

つまずきやすい点

注意点: この式ができないこと

家計簿のひな形が必要なら

この記事の式は、自分で作った表にそのまま使えます。1か月分の収支を費目別に集計するひな形を探しているなら、運営者が作った月間家計簿(Excelテンプレート・400円)があります。A4で印刷できます。ただし、複数の月をまたいだ通年の集計はできません(1か月ごとに使う形です)。Excelの確認はWindowsデスクトップ版16のみです。この記事の方法で足りる場合は、買う必要はありません。

前月と比べた増減の割合を知りたいときは、無料の割合・増減率の計算ツールも使えます(入力は外部に送信されません)。月ごとの繰越の式は、前月繰越を翌月に引き継ぐ方法で計算して確認しています。

まとめ

確認方法: この記事の式は、LibreOffice Calcで実際に再計算し、日付と金額が合計68行並ぶ2つの表(2024〜2027年の日付、月初・月末・うるう日を含む)について、指定した年月の合計28件を、3種類の式で期待値と照合して不一致0件であることを検証スクリプト(site/verify/month_sum.py)で確認しました。使った関数はSUMIFS、EDATE、DATE、SUMPRODUCT、YEAR、MONTHで、Excelにもある関数ですが、Excelでは未確認です。日付の列が文字列の場合は検証していません。外部サイトの記述は参照していません。

参考にした情報