在庫管理において、月末時点の在庫数を把握したり、特定の月の入出庫データを合計したりする作業は非常に重要です。
手動で期間を指定していると、月が変わるたびに数式を書き直す手間が発生し、ミスのもとになります。
この記事では、EOMONTH関数を応用して、月末在庫の算出や月間の入出庫量を自動的に集計する具体的なテクニックを解説します。
この記事を読むことで、日付の変動に左右されない柔軟な集計表を作成できるようになります。
EOMONTH関数の基本構造
=EOMONTH(開始日,月)
引数の説明
開始日: 基準となる日付を指定します(日付が入ったセル参照や、DATE関数などで指定)。
月: 開始日から数えて何ヶ月後(または前)の月末を求めるかを数値で指定します。
-1: 前月末
0: 当月末
1: 翌月末

実際にB4セルの日付について月にそれぞれの数字を入力すると前後の月の末日を表示してくれます。
月末時点の在庫数を算出する
実地棚卸や帳簿上の在庫確認を行う際、EOMONTH関数をSUMIFS関数と組み合わせることで、月末時点の累計在庫を自動計算できます。

例えば、A列に日付、B列に入庫数、C列に出庫数がある場合、2025年7月末の在庫を求めるには、条件範囲に日付を指定し、条件に「”<=”&EOMONTH(“2025/7/1”, 0)」と指定します。
これにより、月初から月末までの全データを対象とした在庫残高を瞬時に算出可能です。
=SUMIFS(B:B,A:A,”<=”&EOMONTH(“2025/7/1”, 0))–SUMIFS(C:C,A:A,”<=”&EOMONTH(“2025/7/1”, 0))
7月末までの入庫数の合計–7月末までの出庫数の合計
月間の入庫量と出庫量を個別に集計する
月ごとの入出庫実績をまとめる場合、その月の「1日」と「末日」の範囲を自動で指定すると便利です。

入庫
=SUMIFS(B:B,$A:$A,”>=”&DATE($E$2,$E$3,1), $A:$A,”<=”&EOMONTH(DATE($E$2,$E$3,1),0))
出庫
=SUMIFS(C:C,$A:$A,”>=”&DATE($E$2,$E$3,1), $A:$A,”<=”&EOMONTH(DATE($E$2,$E$3,1),0))
SUMIFS関数の条件に、開始日として「”>=”&DATE($E$2,$E$3,1)」、終了日として「”<=”&EOMONTH(DATE($E$2,$E$3,1),0)」を組み込みます。
E2とE3セルに日付を入力できるようにしているためこの日付を変更するだけで入出庫数が自動で切り替わります。
在庫の締め日を自動判定する
会社によっては月末ではなく、毎月20日や25日を締め日に設定している場合があります。 その場合でも、EOMONTH関数で前月末の日付を出し、そこに特定の数値を加算することで、柔軟に締め日を算出できます。

前項で使用した「”<=”&EOMONTH(DATE($E$2,$E$3,1),0)」を「”<=”&EOMONTH(DATE($E$2,$E$3,1),-1)+20」とすると1日から20日の期間に変わります。
例えば、前月末を出す「EOMONTH(基準日, -1)」に20を足せば、今月の20日という日付を動的に作成でき、集計範囲の自動切り替えに役立ちます。
まとめ
EOMONTH関数は、単に月末の日付を表示するだけでなく、集計範囲を自動化するための強力なフックとなります。
SUMIFS関数などの集計関数と組み合わせることで、在庫管理や入出庫表のメンテナンスコストを大幅に削減できます。
月次のレポート作成を効率化するために、ぜひこの組み合わせを活用してみてください。



コメント