「利付国債や社債の未収利息、手計算で合っているか不安…」と感じたことはありませんか。利払い回数や基準日数の設定で計算がズレると、決算書の数字にも影響が出て面倒ですよね。そんなときはExcelのACCRINT関数を使えば、引数を指定するだけで正確な未収利息を一発で求められますよ。
この記事では、ACCRINT関数の基本的な使い方から引数の意味、実務での活用パターンまで解説します。ACCRINTM関数との違いも紹介しますよ。
ExcelのACCRINT関数とは?
ACCRINT関数は、定期的に利息が支払われる証券の未収利息を計算するExcelの財務関数です。
読み方は「アクルード・インタレスト」です。英語の「Accrued Interest」の略で、「未収利息」という意味になります。
対象となるのは、利付国債や社債など、半年ごと・年1回といった頻度で利息が支払われる証券です。こうした証券を途中で売買するとき、「前回の利払日から受渡日までの利息はいくら溜まっているか」を計算する場面で使いますよ。
たとえば社債を期中に購入する場合、前回の利払日から購入日までの利息は売り手のものです。買い手は売り手にこの未収利息を上乗せして支払います。この「経過利息」を求めるのがACCRINT関数の役割です。
対応バージョンはExcel 2007以降およびMicrosoft 365です。
ACCRINT関数の書き方(構文と引数)
基本構文
=ACCRINT(発行日, 初回利払日, 受渡日, 利率, 額面, 頻度, [基準], [計算方式])
引数は全部で8つあり、「基準」と「計算方式」は省略できます。
引数の説明
| 引数 | 必須 | 説明 |
|---|---|---|
| 発行日 | はい | 証券の発行日 |
| 初回利払日 | はい | 利息が最初に支払われる日付 |
| 受渡日 | はい | 証券の受渡日(購入日) |
| 利率 | はい | 証券の年利率(例: 5%なら 0.05) |
| 額面 | はい | 証券の額面価格 |
| 頻度 | はい | 年間の利息支払回数(1・2・4のいずれか) |
| 基準 | いいえ | 基準日数の計算方式(0〜4、省略時は0) |
| 計算方式 | いいえ | 未収利息の合計方法(TRUE/FALSE、省略時はTRUE) |
日付を指定するときはDATE関数を使うのがおすすめです。文字列で日付を入力すると、環境によってはエラーになることがあります。
頻度の指定方法
「頻度」引数で指定できる値は次の3つです。
| 頻度 | 意味 |
|---|---|
| 1 | 年1回 |
| 2 | 年2回(半年ごと) |
| 4 | 年4回(四半期ごと) |
日本の利付国債は年2回(半年ごと)の利払いが一般的なので、頻度には 2 を指定するケースが多いですよ。
基準日数の種類
「基準」引数で指定できる値は次の5種類です。
| 基準 | 計算方式 | 特徴 |
|---|---|---|
| 0(省略時) | 30日/360日(NASD方式) | 米国標準。各月を30日とみなす |
| 1 | 実際の日数/実際の日数 | 最も正確。閏年は366日で計算 |
| 2 | 実際の日数/360日 | 実日数ベースだが年は360日固定 |
| 3 | 実際の日数/365日 | 実日数ベースで年は365日固定 |
| 4 | 30日/360日(ヨーロッパ方式) | 欧州標準。月末処理がNASD方式と異なる |
基準の選び方で計算結果が変わるため、取引先や社内ルールに合わせて選んでください。
計算方式の指定
「計算方式」引数では、受渡日が初回利払日より後になる場合の計算範囲を指定します。
| 計算方式 | 動作 |
|---|---|
| TRUE(省略時) | 発行日から受渡日までの未収利息の合計を返す |
| FALSE | 初回利払日から受渡日までの未収利息を返す |
通常はTRUE(省略)で問題ありません。初回利払日以降の期間だけを計算したい場合にFALSEを指定してください。
ACCRINT関数の基本的な使い方
額面100万円、年利3%の社債について、未収利息を求めてみましょう。
条件:
- 発行日: 2024年4月1日
- 初回利払日: 2024年10月1日
- 受渡日: 2024年7月1日
- 利率: 3%
- 額面: 1,000,000円
- 頻度: 2(年2回)
- 基準: 1(実際の日数/実際の日数)
=ACCRINT(DATE(2024,4,1),DATE(2024,10,1),DATE(2024,7,1),0.03,1000000,2,1)
結果: 7,459円
計算の流れを見てみましょう。頻度2(年2回)なので、半年分の利息は 1,000,000 x 3% / 2 = 15,000円です。利払期間は4月1日〜10月1日の183日間、経過日数は4月1日〜7月1日の91日間になります。半年分の利息を日数で按分すると 15,000 x 91 / 183 = 7,459円ですよ。
セル参照を使う場合は次のように書きます。
=ACCRINT(A2,B2,C2,D2,E2,F2,G2)
セルに値を入れておけば、条件を変えたときに数式を修正しなくて済むので便利です。
ACCRINT関数の実務活用パターン
基準日数による計算結果の比較
同じ条件でも、基準の設定によって結果が変わります。実務では「どの基準を使うか」が重要なので、違いを把握しておきましょう。
先ほどと同じ条件で、基準だけを変えた結果を見てみましょう。
| 基準 | 計算方式 | 結果 |
|---|---|---|
| 0 | 30日/360日(NASD) | 7,500円 |
| 1 | 実際/実際 | 7,459円 |
| 3 | 実際/365日 | 7,459円 |
| 4 | 30日/360日(欧州) | 7,500円 |
基準0と4は30日/360日方式のため、経過日数を90日/180日として計算し7,500円になります。一方、基準1と3は実日数(91日/183日)で按分するため7,459円です。
額面が大きくなるほど差額も大きくなるため、取引条件で指定された方式に合わせてくださいね。
複数の証券を一覧で管理する
複数の証券の未収利息をまとめて計算するなら、表形式で管理するのが効率的です。
A列に発行日、B列に初回利払日、C列に受渡日、D列に利率、E列に額面、F列に頻度、G列に基準を入力します。H列に次の数式を入れましょう。
=ACCRINT(A2,B2,C2,D2,E2,F2,G2)
あとはH列を下にコピーすれば、全証券の未収利息が一括で計算できますよ。
内部計算の仕組みを理解する
ACCRINT関数の内部計算にはYEARFRAC関数が使われています。YEARFRAC関数は2つの日付間の年数を小数で返す関数です。
基準の設定によって年数の計算方法が変わるため、ACCRINT関数でも基準引数が重要になってきます。仕組みを理解しておくと、結果の検証がしやすくなりますよ。
ACCRINTM関数との違い・使い分け
ACCRINT関数と名前がよく似たACCRINTM関数があります。どちらも未収利息を求める関数ですが、対象とする証券が異なります。
| 比較項目 | ACCRINT | ACCRINTM |
|---|---|---|
| 対象 | 定期利払い証券 | 満期一括利払い証券 |
| 利息の支払い | 年1回・半年ごとなど定期的 | 満期時に1回だけ |
| 頻度の引数 | あり(年何回払いか指定) | なし |
| 代表的な証券 | 利付国債、社債 | 割引債、短期国債(TB) |
ポイントは「利息が定期的に支払われるかどうか」です。
- 半年ごと・年1回など定期的に利息が支払われる → ACCRINT関数
- 満期まで利息の支払いがない → ACCRINTM関数
迷ったら「その証券は途中で利息をもらえるか?」と考えてみてください。途中でもらえるならACCRINT、満期まで待つならACCRINTMです。
関連する財務関数として、証券の利率を求めるINTRATE関数もあわせて覚えておくと便利ですよ。
よくあるエラーと対処法
ACCRINT関数で発生しやすいエラーと対処法をまとめました。
#NUM! エラー
次のいずれかに該当すると #NUM! エラーになります。
- 発行日 >= 受渡日 → 発行日は受渡日より前の日付にする
- 利率 <= 0 → 利率は0より大きい値を指定する
- 額面 <= 0 → 額面は0より大きい値を指定する
- 頻度が1・2・4以外 → 1、2、4のいずれかを指定する
- 基準が0〜4以外 → 0、1、2、3、4のいずれかを指定する
特に「発行日と受渡日が逆になっている」ケースは見落としやすいので注意してください。
#VALUE! エラー
日付として認識できない値を指定すると #VALUE! エラーが返ります。日付の引数にはDATE関数やセル参照を使い、文字列を直接入力するのは避けましょう。
まとめ
ExcelのACCRINT関数は、定期的に利息が支払われる証券の未収利息を計算する関数です。
この記事のポイントをおさらいします。
- 構文は
=ACCRINT(発行日, 初回利払日, 受渡日, 利率, 額面, 頻度, [基準], [計算方式]) - 対象は利付国債や社債など、定期利払いの証券
- 基準日数(0〜4)の選び方で計算結果が変わる
- 満期一括利払い証券にはACCRINTM関数を使う
- 日付の指定にはDATE関数を使うのが安全
基準の設定を間違えると金額にズレが出るので、取引条件をよく確認してから使ってみてくださいね。
