【注目の最新ガジェットが続々ランクイン!】Wi-Fi 7対応ルーター「eero 7」やAnkerの急速充電器、人気のモバイルモニターやUSB-Cハブ、話題のAndroid 15タブレットなど、今話題のPC周辺機器がランキング上位に!チェックはお早めに!

【解説】ExcelのDATEDIF関数とは?2つの日付の差を年・月・日単位で計算する方法

「2つの日付の差を年・月・日単位で正確に出したい」
「誕生日から年齢を計算したい」
そんなときに便利なのが DATEDIF関数 です。

DATEDIF関数は、開始日と終了日を指定することで、年数・月数・日数の差を求められる関数です。
実務での年齢計算、勤続年数、期間の集計など、日付差の処理に広く使われています。
この記事では、DATEDIF関数の構文や使用例、間違えやすい注意点まで丁寧に解説します。


目次

DATEDIF関数とは?

DATEDIF関数(Date Difference)は、開始日と終了日を指定して、期間の差を年・月・日単位で求める非公式関数です。
Excelの関数一覧には表示されませんが、利用可能です。

■ 構文

=DATEDIF(開始日, 終了日, 単位)
  • 開始日:差の起点となる日付
  • 終了日:差の終点となる日付
  • 単位:”Y”(年) / “M”(月) / “D”(日)など

使用例データ(サンプル表)

ExcelのDATEDIF関数で、開始日と終了日から期間を計算する例
セルA列(開始日)B列(終了日)C列(年数差)D列(月数差)E列(日数差)
12000/1/12025/5/16=DATEDIF(A2,B2,"Y") → 25年=DATEDIF(A2,B2,"M") → 304ヶ月=DATEDIF(A2,B2,"D") → 9267日

単位の一覧と意味

単位意味例(2020/1/1〜2023/5/16)
“Y”年数の差(端数切り捨て)3
“M”月数の差(端数切り捨て)41
“D”日数の差1231
“YM”年を無視した月数の差4(例:1月 → 5月)
“MD”年・月を無視した日数の差15(例:1日 → 16日)
“YD”年を無視した日数の差135(1月1日 → 5月16日)

実務で役立つ活用例

年齢を計算する

=DATEDIF(A2, TODAY(), "Y")

→ 生年月日(A2)から今日の年齢を自動計算。


勤続年数・在籍期間を出す

=DATEDIF(B2, TODAY(), "Y") & "年" & DATEDIF(B2, TODAY(), "YM") & "ヶ月"

→ 年+月でわかりやすく表示。


誕生日まであと何日かを求める

=DATEDIF(TODAY(), DATE(YEAR(TODAY()), MONTH(A2), DAY(A2)), "D")

→ A2に次の誕生日を設定。


注意点と特徴

  • DATEDIF関数は正式な関数一覧に表示されません(非表示関数)
  • 終了日が開始日より前だとエラーになります(#NUM!)
  • 書式ミス(単位の綴り間違いなど)でもエラーになるため注意
  • “MD”や”YM”は計算がやや複雑なので結果確認が重要

まとめ:DATEDIF関数で日付差を柔軟に処理!

  • DATEDIF関数は2つの日付の差を柔軟に計算できる便利な非公開関数
  • 年齢や在籍期間、契約期間などの計算に最適
  • TODAY関数やDATE関数と組み合わせれば動的な期間管理が可能
  • 書式や使い方に少しクセがあるが、習得すれば実務で非常に役立つ!

期間の計算や日付差の処理をする場面では、DATEDIF関数をぜひ活用してみてください。

Tamaglo

最後までお読みいただきありがとうございます。


執筆者 玉城 学(タマキ マナブ)

IT業界歴10年以上。ヘルプデスク・サーバーエンジニアとしてWindowsの設定、クラウド管理、PC最適化を担当。

現在はPC設定・Office活用の専門家として、ブログやYouTubeで情報を発信中。

詳しいプロフィールはこちら

SNSでも情報を発信しています: YouTubeTikTokInstagram

よかったらシェアしてね!
  • URLをコピーしました!

コメント

※ コメントは確認後に公開されます。反映まで少し時間がかかる場合があります。

コメントする


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

目次