Excelで「開始日から終了日までの年数の差」を求めたいとき、単にDATEDIF関数を使うと「整数の年数」しか返りません。
「1年3か月=1.25年」といった 小数を含む年数 を知りたいときに便利なのが YEARFRAC関数 です。
YEARFRAC関数とは?
YEARFRAC関数は、開始日と終了日の日付の差を「年数」で返す関数です。
小数を含めて計算するため、年の一部だけ経過した期間も正確に求められます。
書式
=YEARFRAC(開始日, 終了日, [基準])
- 開始日:基準となる日付
- 終了日:比較する日付
- 基準(省略可):日数計算の方法を指定(デフォルトは0=米国方式)
基準の種類
基準 | 計算方法 | 説明 |
---|---|---|
0または省略 | 米国方式 | 1年=360日(各月30日として計算) |
1 | 実日数/実年 | 実際の日数÷365または366日 |
2 | 実日数/360 | 実際の日数を360で割る |
3 | 実日数/365 | 実際の日数を365で割る |
4 | ヨーロッパ方式 | 1年=360日(月末処理が米国方式と異なる) |
使用例
例1:基本的な年数差
=YEARFRAC("2025/1/1","2025/12/31")
→ 1
例2:実日数/365で計算
=YEARFRAC("2025/1/1","2025/7/1",3)
→ 約0.49589(365日基準で計算)
例3:ローンやリース契約の経過年数
=YEARFRAC(A2, TODAY(), 1)
→ 契約開始日から今日までの経過年数(実日数/実年で計算)
活用例
- ローンやリースの利息計算
経過年数を小数で求めて利息を算出できる。 - 勤続年数や在籍年数の算出
社員の入社日から現在までの年数を正確に求める。 - 投資・金融商品の残存期間管理
満期までの期間を「年換算」で計算可能。
注意点
- 基準を指定しない場合は 米国方式になるため、金融用途では適切な基準を選ぶこと。
- DATEDIF関数との違い:DATEDIF関数は整数(年/月/日)で返すが、YEARFRAC関数は小数を返す。
- シリアル値(日付データ形式)で入力する必要がある。文字列が正しく日付と認識されない場合はエラーになる。
関連関数
関数 | 内容 |
---|---|
DATEDIF | 2つの日付の差を「整数」で返す |
DAYS | 2つの日付の差を「日数」で返す |
EOMONTH | 月末基準の日付を計算 |
TODAY | 今日の日付を返す |
まとめ
- YEARFRAC関数は、開始日と終了日の日付差を 小数を含む年数 で返す関数
- 金融・会計・人事の分野で「年数ベースの精密な計算」に役立つ
- 基準(360日法、365日法、実日数法)を選んで、目的に応じた計算を行える