Excelで日付管理を行う際、指定した日付から「何か月後」の日付を計算したい場面はよくあります。
手動で月を加算していく方法もありますが、月末の日付やうるう年などの影響で計算を間違えてしまうことも少なくありません。そのようなときに便利なのが、ExcelのEDATE関数です。
EDATE関数を使うと、指定した日付から指定した月数だけ前後した日付を簡単に計算することができます。これにより、支払期日や契約更新日、サブスクリプションの更新日など、月単位での日付計算を自動化することが可能になります。
この記事では、ExcelのEDATE関数の基本的な使い方と、数か月後(または数か月前)の日付を正確に計算する方法を分かりやすく解説します。
日付管理を効率化したい方は、ぜひ参考にしてみてください。
EDATE関数の基本的な構文
EDATE関数の書式は以下の通りです。
※EDATE関数はシリアル値を返すので、日付として表示するには表示形式を設定する必要があります。
EDATE関数の使い方
以下、EDATE関数の具体的な使い方をいくつか紹介します。
例1:2ヶ月後の日付を取得
=EDATE(TODAY(), 2)
※TODAY()関数は今日の日付を返します。
引数の「月」に「2」を指定しているため、今日の日付から2ヶ月後の日付が返されます
たとえば、今日の日付が「2024/2/11」の場合、返される日付は「2024/4/11」となります。
なお、「2024/1/31」に対して1カ月後を指定すると、「2024/2/29」と表示されます。これは、2024年2月は29日までしかないためです。
例2:3ヶ月前の日付を取得
=EDATE(TODAY(), -3)
引数「月」に「-3」を指定しているため、今日の日付から3ヶ月前の日付が返されます。
たとえば、今日の日付が「2024/2/11」の場合、返される日付は「2023/11/11」となります。
EDATE関数の具体例
具体的な例で紹介します。
下の図のような表で、「受講日」を基準に「受講期間」の月数分後の日付を表示します。

「受講期日」を表示するセル「E3」を選択します。(①)
「数式」タブを選択します。(②)
「関数ライブラリ」グループの「日付/時刻」をクリックします。(③)

関数の一覧から「EDATE」をクリックします。(④)

「関数の引数」ダイアログボックスが表示されます。
引数の「開始日」に「受講日」のセル「C3」を入力します。(⑤)

引数「月」に「受講期間」のセル「D3」を入力します。(⑥)
OKボタンをクリックします。

これでEDATE関数の入力は完了しましたが、シリアル値が表示されてしまいます。
シリアル値を日付形式で表示したいので、表示形式を日付に設定します。(⑦)

これで指定した月数後の日付を表示できました。他のセルにも反映させるため、オートフィルを行います。

これで「受講期日」を表示することができました。

よくある質問 (FAQ)
Q1: EDATE関数とは何ですか?
A1: EDATE関数は、指定した開始日から指定した月数後(または前)の日付を計算するための関数です。日付の加算や減算に便利です。
Q2: EDATE関数の基本的な書式を教えてください。
A2: 書式は =EDATE(開始日, 月数) です。例えば、=EDATE("2024/1/1", 3) と入力すると、開始日から3か月後の日付を計算します。
Q3: マイナスの値を使って、過去の日付を計算できますか?
A3: 可能です。月数にマイナスの値を指定することで過去の日付を計算できます。例:=EDATE("2024/1/1", -3) で3か月前の日付を求められます。
Q4: 計算結果の日付の表示形式を変更するにはどうすればいいですか?
A4: 日付が表示されるセルを選択し、右クリックして「セルの書式設定」から「日付」形式を選び、お好みの表示形式に変更してください。
Q5: 開始日をセル参照で指定することはできますか?
A5: はい、できます。例えば、セルA1に日付が入っている場合、=EDATE(A1, 6) のようにセル参照で開始日を指定できます。
Q6: 計算結果がエラーになる場合、どう対処すればいいですか?
A6: 開始日が正しい日付形式か、月数が整数で指定されているか確認してください。不適切な入力があるとエラーが出ることがあります。
Q7: EDATE関数で1年後の日付を求めるにはどうすればいいですか?
A7: 1年は12か月なので、月数に12を指定します。例えば =EDATE("2024/1/1", 12) で1年後の日付を求められます。
まとめ
EDATE関数を使用すると、Excelで月単位の日付の加算や減算を簡単に行うことができます。
指定した日付から「何か月後」「何か月前」といった日付を正確に計算できるため、日付管理を効率化するのに役立ちます。
EDATE関数を活用する主なメリットは次のとおりです。
- 請求書や納品書の作成など、月単位の日付計算を効率化できる
- 手作業による日付計算のミスを防げる
- 日付計算のロジックを分かりやすく管理できる
例えば、支払期限の管理、契約更新日の計算、財務データの分析など、月単位で日付を扱うさまざまな業務で活用できます。
ぜひExcelのEDATE関数を活用して、日付計算を効率化してみてください。

