Excelの「毎月の集計」を手作業から卒業する3つの関数

記事
IT・テクノロジー
売上や経費の一覧から「今月はいくらだったか」「担当者ごとにいくらか」を出すとき、フィルターをかけて電卓で足したり、月ごとにシートをコピーしたりしていませんか。

この記事で紹介する3つの関数を組み合わせると、データを1行足すだけで、月別・担当者別の集計が自動で更新される表が作れます。

■ 元のデータ
A列に日付、B列に担当者、C列に金額が並んだ一覧があるとします(1行目は見出し)。
ポイントは、データは1枚のシートに、1行1件で下に足していくことです。月ごとにシートを分けないのが、自動化の第一歩です。

■ 関数1:SUMIFS(条件に合うものだけ合計)
集計用の表のE2セルに「2026/1/1」のように月の初日を入れ、F2に次の式を入れます。

=SUMIFS($C:$C, $A:$A, ">="&E2, $A:$A, "<"&EDATE(E2,1))

「日付がその月の1日以上、翌月の1日より前」の金額だけを合計します。E3以降に翌月の初日を入れて、F2の式を下にコピーすれば月別の合計表のできあがりです。

■ 関数2:EDATE(○か月後の日付)
EDATE(E2,1) は「E2の1か月後の日付」を返します。日数を足す方法と違い、2月も12月も正しく翌月の1日になります。
E3に =EDATE(E2,1) と入れて下にコピーすれば、月の初日の列も自動で作れます。

■ 関数3:UNIQUE(重複のない一覧)
担当者の名前を手で並べると、新しい人が増えたときに漏れます。次の式で、データから重複なしの一覧を自動で作れます(Excel 2021/Microsoft 365)。

=UNIQUE(FILTER(B2:B1000, B2:B1000<>""))

この一覧をH3から下に、月の初日をI2から右に並べ、I3に次の式を入れて右と下にコピーすると、担当者×月のクロス集計になります。

=SUMIFS($C:$C, $B:$B, $H3, $A:$A, ">="&I$2, $A:$A, "<"&EDATE(I$2,1))

■ よくあるつまずき
・合計が0になる:日付が「文字」として入っていることが多いです。表示形式が日付になっているか確認してください。
・件数も知りたい:SUMIFSをCOUNTIFSに変え、最初の「合計する列」を消すと件数が出ます。

■ まとめ
データは1枚のシートに1行1件、月の合計は SUMIFS+EDATE、担当者の一覧は UNIQUE。これだけで、毎月の「フィルター→電卓」の作業はなくなります。

「自分の会社の表に合わせて作ってほしい」という方は、ココナラで作成を承っています。
面倒なExcel・スプシ作業を自動化します
サービス数100万件のスキルマーケット、あなたにぴったりのサービスを探す