COUP で始まる関数は、利息を定期的に払う債券の利払日と日数を調べる関数です。COUPPCD は前回の利払日、COUPNCD は次回の利払日、COUPNUM は満期までの利払回数、COUPDAYS は利払期間の日数を返します。
利払日は満期日から逆算して決まります。この記事では、4 つの関数の使い方を、実際の Excel で確かめた結果で説明します。
練習用Excelファイル(無料ダウンロード)
受渡日・満期日・利払回数の表と、この記事の COUPPCD・COUPNCD・COUPNUM・COUPDAYS の式をまとめた練習ファイルです。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り
目次
COUPPCD・COUPNCD・COUPNUM・COUPDAYS 関数の書き方
=COUPPCD(受渡日, 満期日, 頻度, [基準])
=COUPNCD(受渡日, 満期日, 頻度, [基準])
=COUPNUM(受渡日, 満期日, 頻度, [基準])
=COUPDAYS(受渡日, 満期日, 頻度, [基準])
| 関数 | 返す値 |
|---|---|
| COUPPCD | 受渡日の前の利払日 |
| COUPNCD | 受渡日の次の利払日 |
| COUPNUM | 受渡日から満期日までの利払回数 |
| COUPDAYS | 受渡日をふくむ利払期間の日数 |
| COUPDAYBS・COUPDAYSNC | 前回の利払日から受渡日まで・受渡日から次回の利払日までの日数 |
COUPPCD・COUPNCD はシリアル値で返るので、日付の表示形式にします。
1. 前回の利払日を出す(COUPPCD)
満期日 3 月 20 日・年 2 回払いの債券です。
=COUPPCD(B2,B3,B4)

結果は 2026/3/20 でした。
2. 次回の利払日を出す(COUPNCD)
受渡日のあとの利払日です。
=COUPNCD(B2,B3,B4)

結果は 2026/9/20 でした。
3. 満期までの利払回数を出す(COUPNUM)
受渡日から満期日までに利息を受け取る回数です。
=COUPNUM(B2,B3,B4)

結果は 10 回でした。
4. 利払期間の日数を出す(COUPDAYS)
基準を 1(実際の日数)にします。
=COUPDAYS(B2,B3,B4,1)

結果は 184 日でした。
【実機で検証】COUPDAYS でつまずくところ

| ためしたこと | 式 | 結果 |
|---|---|---|
| COUPDAYBS(前回〜受渡日) | =COUPDAYBS(例!B2,例!B3,2,1) | 56 |
| COUPDAYSNC(受渡日〜次回) | =COUPDAYSNC(例!B2,例!B3,2,1) | 128 |
| 2 つの合計 | =COUPDAYBS(例!B2,例!B3,2,1)+COUPDAYSNC(例!B2,例!B3,2,1) | 184 |
| 年 1 回払いの COUPNUM | =COUPNUM(例!B2,例!B3,1) | 5 |
| 頻度 3 | =COUPNUM(例!B2,例!B3,3) | #NUM! |
| 受渡日と満期日が逆 | =COUPNUM(例!B3,例!B2,2) | #NUM! |
前回の利払日から受渡日までは 56 日、受渡日から次回の利払日までは 128 日でした。合計は 184 日で、COUPDAYS と同じです。
年 1 回払いにすると、COUPNUM は 5 回になりました。
頻度 3 は #NUM!、受渡日と満期日が逆だと #NUM! になりました。
よくある質問
経過利息を出したいときは?
ACCRINT 関数で、利払日から受渡日までの利息を出せます。
債券の価格を出したいときは?
PRICE・YIELD 関数で説明しています。
月末や何か月後の日付を出したいときは?
経過日数の計算などの日付の記事で説明しています。
練習用Excelファイル(無料ダウンロード)
この記事の例をまとめた練習ファイルです。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

コメント