「国債や社債の利回りをExcelで計算したい」そんなときに役立つのが YIELD関数(イールド関数) です。YIELD関数を使えば、購入価格・利率・償還日 などから、実質的な利回り(イールド)を自動で求めることができます。
YIELD関数とは?
YIELD関数(イールド) は、
定期的に利息(クーポン)が支払われる債券の実際の年利回りを計算する関数です。
「額面・購入価格・利率」などを入力するだけで、投資効率を表す利回りを算出できます。
書式
=YIELD(購入日, 償還日, 利率, 価格, 額面, 利息支払回数, [基準])
引数の説明
- 購入日:債券を購入した日付(または発行日)
- 償還日:元本が返済される日付
- 利率:年利(クーポンレート)を指定(例:0.005=0.5%)
- 価格:債券の購入価格(額面100円あたりの金額)
- 額面:債券の額面金額(通常は100円)
- 利息支払回数:年間の利息支払回数(1, 2, 4など)
- 基準:日数計算方法(0:US基準、1:実際/実際など)
使用例
例:国債の実質利回りを求める

額面100円、価格98円の国債を2025年1月1日に購入し、2030年1月1日に償還。
利率0.05%、利息は年2回支払い。このときの実質利回りをYIELD関数を使って求めてみましょう。
=YIELD(B3,C3,D3,E3,B6,C6,D6)

結果:約0.455%(年利)
表面利率は0.05%と極めて小さいですが、額面100を98で買うディスカウント(2円の差益)があるため、5年・半年利払いの条件で年率換算すると 実質利回りは約0.455% になります。
注意点
- 価格は額面100あたりで指定する
- 利息支払回数は通常「1(年1回)」または「2(半年に1回)」を指定します。
- 基準を省略すると「0(US方式)」が適用されますが、正確な計算には国や金融商品に応じて基準を確認しましょう。
関連関数
| 関数名 | 内容 |
|---|---|
| YIELDMAT関数 | 満期一括利付債の利回りを求める |
| PRICE関数 | 利回りから債券価格を求める |
| COUPDAYBS関数 | 利払い期間の開始日からの経過日数を求める |
| RATE関数 | 投資やローンの利率を求める |
まとめ
YIELD関数は、債券の実質的な利回り(年率)を求める関数です。
表面利率だけでなく、購入価格や残存期間を踏まえた「本当の収益率」を算出できるため、
国債や社債などの投資シミュレーションに欠かせません。