Excelを使った日付計算は、プロジェクトの期限設定やイベントの計画など、多くのシナリオで重宝します。今回は日付の「○か月後」を求める際に役立つ二つの関数、EDATE関数とDATE関数の使用方法について詳しく見ていきましょう。
EDATE関数を使用する方法
EDATE関数は日付の計算に特化しており、「指定した日付から○か月後の日付」を簡単に求めることができます。関数の基本形は次のようになります。
=EDATE(開始日, 月数)
使用例: A1セルに 2023/1/25
が入力されているとき、3か月後を計算するには次のように入力します。
=EDATE(A1, 3)
結果として 2023/4/25
が返されます。ただし月末などで29~31日のような存在しない日付になった場合はその月末日になります。
使用例: A1セルに 2023/1/31
が入力されているとき、1か月後を計算するには次のように入力します。
=EDATE(A1, 1)
結果として 2023/2/28
が返されます。2023/2/31
は存在しないのでその月末になります。
DATE関数を使用する方法
DATE関数は年、月、日を指定して新しい日付を生成する汎用的な関数です。YEAR関数、MONTH関数、DAY関数と組み合わせます。月数を加える場合の計算式は次のようになります。
=DATE(YEAR(開始日), MONTH(開始日) + 月数, DAY(開始日))
使用例: A1セルに 2023/1/25
が入力されているとき、3か月後を計算するには次の式を使用します。
=DATE(YEAR(A1), MONTH(A1) + 3, DAY(A1))
結果として 2023/4/25
が返されます。
DATE
関数は、計算された月が存在しない日付を生じた場合、自動的に次の月の正しい日付に修正します。この例では、DATE
関数は 2023/3/3
を結果として返します。
使用例: A1セルに 2023/1/31
が入力されているとき、1か月後を計算するには次の式を使用します。
=DATE(YEAR(A1), MONTH(A1) + 1, DAY(A1))
結果として 2023/3/3
が返されます。2023年の2月は28日までしかなく2023/2/31は作成できません。この日は月末から3日後
と認識されて 2023/3/3
が返されるのです。
EDATE関数とDATE関数の違い
両関数はよく似ているように見えますが、月末の日付の処理において異なる結果を返すことがあります。
- 月末の日付:
EDATE
関数は月末を過ぎた日付を月末の日付に調整しますが、DATE
関数は計算された日付が実在しない場合に次の月の日付に修正します。修正幅は月末からの日数です。
まとめ
日付の「○か月後」を計算する際には、目的に応じてEDATE
関数とDATE
関数のいずれかを選択して使用しましょう。「月末」を扱う場合は特にEDATE
関数の方が直感的です。一方で、DATE
関数はよりカスタマイズが可能であり、日付を生成するための幅広い制御が可能です。
コメント