【DATEDIF関数 スプレッドシート】2つの日付の差を求める

Googleスプレッドシートで用いることができる【DATEDIF関数】は、2つの年月日の差を求めることが出来ます。年齢、継続年数、継続日数、経過日数などを算出するときに用います。
この記事では、【DATEDIF関数】の使い方、使用例について、説明・解説していきます。

記事を書いた人

こんにちは。当ブログの管理人のくろんです。
30代サラリーマン、新規事業推進室に所属。仕事で身につけた業務効率化ノウハウをアウトプットしていきます。読んでくれた方の業務が一秒でも早く終わりますように!!

スポンサーリンク
目次

DATEDIF関数とは

DATEDIF関数は、2つの日付の差分を求めることができる関数です。

DATEDIF関数の構文

DATEDIF(開始日, 終了日, 単位)

項目内容
開始日計算の起点となる日。日付が入力されているセル、日付を直接入力します。
終了日計算の終点となる日。日付が入力されているセル、日付を直接入力します。
単位時間の単位を指定する文字を入力します。
指定できる値は “Y”、”M”、”D”、”MD”、”YM”、”YD” です。
“Y”:開始日と終了日の間の年数を返す。
“M”:開始日と終了日の間の月数を返す。
“D”:開始日と終了日の間の日数を返す。
“MD”:開始日と終了日の間の年月を無視した、日数を返します。
“YM”:開始日と終了日の間の年を無視した、月数を返します。
“YD”:開始日と終了日の間が 1 年以内であるものとして、開始日と終了日の間の日数を返します。

実際にDATEDIF関数を使ってみた

=datedif(A2,B2,"Y")

単位ごとにどのような挙動をしているかが、これが分かりやすいかと思います。

“Y”は、1年前の同日をもって、『1』とカウント。
“M”は、1ヶ月前の同日をもって、『1』とカウント。
“D”は、同じ日は『0』で、1日ずれたら『1』とカウント。
“MD”は、単純に日付だけに着目して、その差分を返す。
“YM”は、”M”と似ているが、1年経過すると、『12』ではなく『0』に戻る。
”YD”は、”D”と似ているが、1年経過すると、『365』ではなく『0』に戻る。

また、開始日のほうが終了日よりも、後の日付になると、『#NUM!』エラーが返ってきますので注意が必要です。

うるう日周辺の挙動はどうなる?

うるう日である『2020/2/29』を終了日としたときの『DATEDIF関数』の挙動について、まとめておきます。
“Y”は、きっちり1年超えないと『1』とカウントされないことが分かります。また、”YD”も『365』までカウントされることが分かります。このあたりの挙動は、なにかの判定式で使うこともあるかと思うので、知っておきたいところです。

勤続年数・勤続期間の算出

=datedif($B4,$B$1,"Y")

このように、勤続年数は『”Y”』、勤続月数は『”M”』、勤続日数は『”D”』を単位に指定してあげれば、簡単に算出することが出来ます。

DATEDIF関数のまとめ

DATEDIF関数は、2つの日付の差分を調べてくれる関数です。指定する単位によって、年・月・日の差を返してくれます。
年齢の計算、経過日数の計算などに用いることができます。

スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次