YEARFRAC関数の使い方

開始日と終了日の間の全日数が1年間に対して占める割合を返します。

200720102013201620192021365
構文
=YEARFRAC(開始日, 終了日, [基準])
引数
  1. 開始日必須
  2. 終了日必須
  3. 基準省略できる
どんな関数か

2つの日付の期間が「何年分(例:1.5年)」にあたるかを小数で返します。年齢の精密な計算や、利率の期間按分などに使われます。

使用例

C2 に =YEARFRAC(A2, B2) を入れると、こうなります。

ABC
1開始日終了日年に直すと
22023/1/12023/7/10.5

数式を入れたセル

結果: 0.5(ちょうど半年ぶん)

つまずきやすいところ

  • 3つめ(基準)で数え方が変わる。0(既定)は「1か月30日・1年360日」、日本の年齢計算なら 1(実日数/実日数)
  • 返るのは小数の年数。満年齢がほしいなら INT で切り捨てるか、DATEDIF の "Y" を使う
  • 開始日が終了日より後でも、エラーにならず正の値が返る(順番を取り違えても気づけない)

よくあるエラーと、その直し方

#NUM!
3つめ(基準)に 0〜4 以外を指定した0(30日/360日・米国方式)〜4(30日/360日・欧州方式)の範囲にする。日本の年齢計算なら 1(実日数/実日数)
#VALUE!
日付として読めないものを渡した日付の値が入ったセルを指す

YEARFRACを使う実例レシピ(1件)

同じ「日付・時刻」の関数

日付・時刻の関数をすべて見る(25件)