Excel関数 逆引き集 | 月末日を取得 → EOMONTH

Excel
スポンサーリンク

概要

Excelで「月末日(その月の最後の日)」を求めたいときは EOMONTH関数 を使います。EOMONTHは、指定した日付から「指定月数だけ前後にずらした月の末日」を返します。月末締めの集計、請求書の締日、プロジェクトの期間計算などで定番の関数です。


基本の使い方

書式

=EOMONTH(開始日, 月数)

開始日には任意の日付(セル参照、DATE、TODAYなど)を指定します。月数には、開始日から何か月ずらすかを指定します(今月なら0、翌月なら1、前月なら-1)。

=EOMONTH("2025/12/17",0)   // 2025/12/31(今月の月末)
=EOMONTH("2025/12/17",1)   // 2026/01/31(翌月の月末)
=EOMONTH("2025/12/17",-1)  // 2025/11/30(前月の月末)

具体例

セル参照でその月の末日を取得

=EOMONTH(A2,0)

A2が「2025/12/17」なら「2025/12/31」を返します。

今日の属する月の末日を取得

=EOMONTH(TODAY(),0)

今日がいつでも、その「今月の月末」を返します。

指定日から3か月後の月末を取得

=EOMONTH(DATE(2025,7,15),3)

結果は「2025/10/31」を返します。


応用テンプレート

月初と月末の期間を求める(締め期間)

開始 = EOMONTH(TODAY(),-1)+1
終了 = EOMONTH(TODAY(),0)

開始は「今月の月初」、終了は「今月の月末」です。SUMIFSなどの条件にそのまま使えます。

今月の日数を求める

=EOMONTH(TODAY(),0) - (EOMONTH(TODAY(),-1)+1) + 1

月初から月末までの日数を計算します。

締め日の翌営業日(暫定)を作る

=EOMONTH(A2,0)+1

月末の翌日(多くの場合は翌月1日)を返します。営業日ロジックはWORKDAY関数と組み合わせて調整します。


よくあるつまずきと対策

表示が数字になる

EOMONTHは日付のシリアル値を返します。結果セルの表示形式を「日付」に変更すると期待通りに見えます。書式例は「yyyy/mm/dd」。

月数の符号を間違える

今月は0、翌月は1、前月は-1です。符号を間違えると全く別の月の末日になります。まずは0で確認しましょう。

文字列日付での不具合

「2025/12/17」を文字列として扱うと環境によって解釈が変わることがあります。DATE関数で日付を明示的に生成するか、セルを日付として入力してください。


例題

問題1: A2セルの日付の属する月の月末日をB2に表示してください。

解答例:

=EOMONTH(A2,0)

問題2: 今日の属する月の月末日をC2に表示してください。

解答例:

=EOMONTH(TODAY(),0)

問題3: D2セルの日付から前月の月末日をE2に表示してください。

解答例:

=EOMONTH(D2,-1)

問題4: F2セルの日付から2か月後の月末日をG2に表示してください。

解答例:

=EOMONTH(F2,2)

問題5: 今月の月初と月末をそれぞれH2とI2に表示してください。

解答例(H2: 月初、I2: 月末):

H2: =EOMONTH(TODAY(),-1)+1
I2: =EOMONTH(TODAY(),0)

まとめ

月末日を取得するなら EOMONTH が最短ルートです。月数で前後の月を自在に指定でき、月初は「EOMONTH(…, -1)+1」で補完できます。月次締め、請求、在庫、労務など“月単位”の実務では必須級。まず「今月=0、翌月=1、前月=-1」を体に覚え、期間条件に素早く組み込めるようにしておきましょう。

タイトルとURLをコピーしました