Excelでxxヶ月の月末日付を取得するにはEOMONTH関数を使用することで可能となります。
xxヶ月後の月末日付を取得する方法
EOMONTH関数は「EOMONTH(開始日, 月)」の書式で指定します。
以下の例ではB1セル「本日の日付」の5ヶ月後の月末日をB2セルへ表示しています。
B2セルは日付型にして書式には「=EOMONTH(B1,5)」を入力しています。
B列の書式
🧠 補足:便利な使い方・応用パターン
以下は、記事には明記されていないが、実務で役立つ応用例・注意点です。
・“今月末”を基準に何ヶ月後の月末を得る
例えば「今月(この月)の末日」から数ヶ月先の月末日を出したい場合、
となります。TODAY() で“今日”を開始日とすれば、データ更新を自動化できます。
・「次回支払日」を「3ヶ月おき」「半年おき」などで設定する
月次/隔月/四半期等の支払スケジュール管理に、EOMONTHを使うのが有効です。例えば「支払開始月」+「毎3ヶ月」の繰り返し。
例:
のような形で回数を掛けて月数を変化させることができます。
・“月末”ではなく“月の特定日”を使いたい場合は?
もし “xxヶ月後の20日” や “xxヶ月後の5営業日” というような条件であれば、EOMONTHの結果に対して日付の調整を加える必要があります。
例:
などで「3ヶ月後の月の20日」を出せます。
・「月末」が祝日・休日と重なる場合の対応
月末日が土日祝日の場合、「翌営業日」や「前営業日」に移動したい場合には、別途関数(例えば WORKDAY や NETWORKDAYS 等)を組み合わせる必要があります。EOMONTH 単体では「月末日=カレンダー上の最後の日」を返すのみです。
・マイナス月数を指定して「過去の月末日」を取得
例えば「3ヶ月前の月末日」を出したいなら、月数に負の数を指定します。
これで “開始日から3ヶ月前の月の月末日” を取得できます。
⚠️ 注意点・落とし穴
-
開始日セルが「日付型」でないと、思った通りに動かないことがあります。文字列や「2025/11」などの形式ではエラーやずれが生じることがあります。
-
システムの地域設定やExcelのバージョンによって日付の解釈が異なる場合があります。特に月/日/年の並びが異なる国では注意。
-
「xヶ月後」の“月末”が翌月にずれてしまうケース(例えば、「1月31日」+1ヶ月後 →「2月28/29日」)は、EOMONTHでは正しく“2月末日”として処理されますが、この挙動を知らないと誤解しやすいです。
-
Excel Online やExcel for Mac/Windows版で若干の動作差が出ることがありますが、EOMONTH自体は標準関数なので大きな違いは少ないです。
🔍 さらに便利にするコツ
-
入力規則(データ検証) を使って、開始日セルに「日付のみ入力可」と制限をかけておくと、誤入力によるエラーが防げます。
-
「何ヶ月後」の“何”を別セルに入力して可変にしておくと、同じ数式で複数パターンを作れます。例えば、C1セルに “3” を入れて、
とすれば、数値を変えるだけで出力先が変わるので便利です。
-
月末日以外の“月の第一営業日”や“最終営業日”を出したい場合、EOMONTHと組み合わせて WORKDAY/WORKDAY.INTL 関数を使うと自由度が高まります。
-
出力された「月末日」を元に、「この月からxx日後」や「翌月xx日」などに派生させることで予算計画・支払スケジュール・契約更新等に活用できます。
