
「契約開始日から3か月後を自動で出したい」
「毎月のスケジュールを簡単に管理したい」
そんなときに役立つのが EDATE関数 です。
EDATE関数は、基準日から指定した月数だけ前後の日付を求めることができる関数で、定期更新日や支払期日などの自動計算に便利です。
この記事では、EDATE関数の基本構文、活用例、EOMONTH関数との違いなどをわかりやすく解説します。
目次
EDATE関数とは?
EDATE関数は、ある日付から指定した月数だけ前後の日付を返すExcel関数です。
日数ではなく“月単位”で日付計算できるのが特長です。
■ 構文
=EDATE(開始日, 月数)
- 開始日:基準となる日付(セル参照または直接入力)
- 月数:プラスで将来、マイナスで過去の日付を取得
使用例データ(サンプル表)

セル | A列(開始日) | B列(月数) | C列(数式) | 結果 |
---|---|---|---|---|
1 | 2025/01/31 | 1 | =EDATE(A2, B2) | 2025/02/28(補正) |
2 | 2025/05/16 | -3 | =EDATE(A3, B3) | 2025/02/16 |
3 | 2025/07/01 | 12 | =EDATE(A4, B4) | 2026/07/01 |
4 | TODAY() | 6 | =EDATE(TODAY(), B5) | 今日から6か月後の日付 |
活用テクニックと使用例
定期契約の更新日を自動表示
=EDATE(A2, 6)
→ 契約開始日(A2)から6か月後の日付を自動算出。
月単位のリマインダー作成
=IF(EDATE(A2, 1) <= TODAY(), "期限切れ", "有効")
→ 1か月経過したら「期限切れ」と表示。
TODAY関数と組み合わせた将来日付の計算
=EDATE(TODAY(), 3)
→ 今日から3か月後を計算。申込日から有効期限の算出などに活用。
EDATEとEOMONTHの違い
項目 | EDATE関数 | EOMONTH関数 |
---|---|---|
戻り値 | 基準日と同じ日を維持(末日を超えたら補正) | 月末の日付に自動で調整 |
例 | EDATE("2025/1/31", 1) → 2025/2/28 | EOMONTH("2025/1/31", 1) → 2025/2/28 |
主な用途 | 契約更新日・請求日などの「同日」処理 | 月末締めのスケジュール・帳簿処理など |
注意点と特徴
- 月数に負の値を入れると過去の日付になる
- 日付が月末超えになると、自動で補正される(例:1月31日 → 2月28日)
- 日付形式で表示するように書式設定しておくと見やすい
まとめ:EDATE関数で日付の「○か月後」をスマートに管理!
- EDATE関数は、指定した日付から前後の月数を簡単に計算できる便利な関数
- 契約日、請求日、定期スケジュールの自動化に最適
EOMONTH
やTODAY
と組み合わせれば、さらに応用が効く- 月を単位にした処理には、まずこの関数を押さえておこう!
Excelで月単位の管理をするなら、EDATE関数は非常に頼れる存在です。

最後までお読みいただきありがとうございます。
コメント
※ コメントは確認後に公開されます。反映まで少し時間がかかる場合があります。