銀行借入の返済スケジュールを自分で作ろうとして「各月の利息っていくら?」と困ったことはありませんか。
住宅ローンならIPMT関数で一発ですが、銀行の事業融資は元金均等返済が多く、IPMTでは値が合わないんですよね。
そんなときに活躍するのが、Excelの ISPMT関数(イズ・ペイメント)です。
ISPMT関数は 元金均等返済 の各期の利息を、たった1つの数式で求めてくれる便利な関数です。
この記事では、ISPMT関数の基本的な使い方から、元金均等返済スケジュール表の作り方まで解説します。
IPMT関数との違いや使い分けも整理しますので、「どっちを使えばいいの?」という疑問もスッキリしますよ。
ISPMT関数とは?元金均等返済の各期利息を求めるExcel関数
ISPMTとは Interest paid on Straight-line basis(元金均等返済の利息)の略です。
Excelに古くから搭載されている財務関数のひとつで、元金均等返済の指定した期の利息部分を計算できます。
Excel 2003以降のすべてのバージョンとMicrosoft 365で利用できます。
互換性関数ではなく、現役の標準関数です。
元金均等返済とは、毎期の 元金返済額が一定 の返済方式です。
毎期、元金が同じ額ずつ減っていくため、利息は徐々に減っていきます。
この「毎期減っていく利息」を一発で計算できるのがISPMT関数です。
銀行の事業融資・社債の利払い・割賦取引など、元金均等返済を採用するケースで重宝します。
住宅ローンのような元利均等返済にはIPMT関数を使うので、混同しないように注意が必要です。
ISPMT関数の構文と引数
ISPMT関数の構文は次のとおりです。
=ISPMT(利率, 期, 期間, 現在価値)
引数は4つで、すべて必須です。
IPMT関数やPPMT関数にあった「将来価値」「支払期日」の引数はありません。
| 引数 | 必須 | 内容 |
|---|---|---|
| 利率(rate) | 必須 | 1期あたりの利率。年利6%・月次返済なら 6%/12 |
| 期(per) | 必須 | 利息を求めたい期。0から期間-1まで の整数 |
| 期間(nper) | 必須 | 返済の総回数。月次返済で3年なら 36 |
| 現在価値(pv) | 必須 | 借入額。借入の場合はプラスで指定 |
ここで一番の落とし穴が 期(per)が0始まり という点です。
IPMT・PPMT関数は1始まりですが、ISPMT関数だけ0始まりなのでご注意ください。
たとえば36回返済の第1回目の利息を求めたいときは、per=0 を指定します。
最終回は per=35 です。
1始まりで指定すると結果が手計算と合わなくなります。
戻り値の符号について
借入額(pv)をプラスで指定すると、ISPMTの戻り値はマイナスになります。
これは「利息を支払う」というキャッシュアウトを表しているためです。
表示上プラスにしたい場合は、=-ISPMT(...) のようにマイナス記号を頭に付けてください。
返済スケジュール表ではプラス表示のほうが見やすいので、この書き方をよく使います。
ISPMT関数の基本的な使い方
実際にISPMT関数を使ってみましょう。
ここでは「借入100万円・年利6%・36回返済(月次)」のローンを例に、第1期と第10期の利息を計算します。
入力するセルは次のように設定します。
| セル | 内容 | 値 |
|---|---|---|
| B1 | 借入額 | 1,000,000 |
| B2 | 年利 | 6% |
| B3 | 返済回数 | 36 |
第1期(per=0)の利息を求める数式は次のとおりです。
=-ISPMT(B2/12, 0, B3, B1)
この数式の結果は 5,000円 になります。
月利は0.5%(年利6%÷12)で、初月の借入残高は100万円のままです。
利息は 1,000,000 × 0.5% = 5,000 という計算ですね。
第10期(per=9)の利息も同じように計算できます。
=-ISPMT(B2/12, 9, B3, B1)
結果は 3,750円 になります。
9期分の元金返済(27,778円 × 9 = 250,000円)が進んだ後の残高は75万円なので、利息は 750,000 × 0.5% = 3,750 という計算です。
利息が毎期減っていくのが、元金均等返済の特徴ですね。
ISPMT関数で元金均等返済スケジュール表を作る
実務で一番使うのが、返済スケジュール表の作成です。
借入額・利率・返済回数を入力するだけで、各期の利息・元金・残高が自動計算される表を作りましょう。
入力セルは先ほどと同じです。
| セル | 内容 | 値 |
|---|---|---|
| B1 | 借入額 | 1,000,000 |
| B2 | 年利 | 6% |
| B3 | 返済回数 | 36 |
スケジュール表のレイアウトは次のとおりです。
| 列 | 内容 |
|---|---|
| A | 期(1〜36) |
| B | 期番号(per、0〜35) |
| C | 元金返済 |
| D | 利息 |
| E | 返済額合計 |
| F | 残高 |
A6セルから36行分を作るとして、各列の数式は次のようになります。
A6: =ROW()-5 (1, 2, 3, ... と連番)
B6: =A6-1 (期番号は0始まりに変換)
C6: =$B$1/$B$3 (元金返済額は一定)
D6: =-ISPMT($B$2/12, B6, $B$3, $B$1)
E6: =C6+D6 (合計)
F6: =$B$1-C6*A6 (残高)
A6からF6までを入力したら、A41までドラッグしてオートフィルすれば36期分が完成します。
利息(D列)が毎期減り、返済額合計(E列)も少しずつ減っていく様子が確認できますよ。
スピル機能を使った1セル数式版
Microsoft 365やExcel 2021ならスピル機能が使えるので、より簡潔に書けます。
A6セルに次の数式を入れるだけで、36行分が一気に展開されます。
=LET(
期, SEQUENCE(B3),
per, 期-1,
元金, B1/B3,
利息, -ISPMT(B2/12, per, B3, B1),
HSTACK(期, per, 元金, 利息, 元金+利息, B1-元金*期)
)
LET関数とSEQUENCE関数を組み合わせることで、表全体を1つの数式で生成できます。
返済回数(B3)を変えると表の長さも自動で変わるのが便利です。
ISPMT関数とIPMT関数の違い
ISPMT関数とIPMT関数は名前も用途も似ていますが、計算する対象がまったく違います。
混同しやすいので、ここでしっかり整理しておきましょう。
| 項目 | ISPMT関数 | IPMT関数 |
|---|---|---|
| 返済方式 | 元金均等返済 | 元利均等返済 |
| 元金返済額 | 毎期一定 | 毎期増えていく |
| 利息 | 毎期減っていく | 毎期減っていく(減り方が緩やか) |
| 返済額合計 | 毎期減っていく | 毎期一定 |
| 期番号の数え方 | 0〜nper-1 | 1〜nper |
| 引数の数 | 4つ | 6つ(fv、typeあり) |
元金均等返済(ISPMT)と元利均等返済(IPMT)の最大の違いは、毎期の返済額が変動するかどうかです。
元金均等は毎期の元金返済が一定なので、初期は返済額が大きく後期は小さくなります。
元利均等は返済額そのものが一定なので、家計の管理がしやすいのが特徴です。
実務では、銀行の事業融資は元金均等が多く、住宅ローンは元利均等が一般的です。
契約書を確認して、どちらの方式かを把握してから関数を選びましょう。
同じ条件で比較してみる
借入100万円・年利6%・36回返済の条件で、第1期の利息を比較すると次のようになります。
| 関数 | 数式 | 結果 |
|---|---|---|
| ISPMT(元金均等) | =-ISPMT(6%/12, 0, 36, 1000000) | 5,000円 |
| IPMT(元利均等) | =-IPMT(6%/12, 1, 36, 1000000) | 5,000円 |
第1期はどちらも同じ5,000円です。
しかし第10期では値が異なってきます。
| 関数 | 第10期の利息 |
|---|---|
| ISPMT(per=9) | 3,750円 |
| IPMT(per=10) | 3,914円 |
元金均等のほうが利息の減り方が早いため、後半に行くほど両者の差が大きくなります。
総支払利息を比較すると、元金均等返済のほうが少なく済むケースが多いです。
ISPMT関数のよくあるエラーと対処法
ISPMT関数を使っていて出やすいエラーと、その原因・対処法をまとめます。
| エラー / 症状 | 原因 | 対処 |
|---|---|---|
#NUM! | 期(per)が0未満または期間以上 | perを 0〜nper-1 の範囲に収める |
#VALUE! | 引数に文字列が入っている | 全引数を数値で指定する |
| 結果が手計算と合わない | 期番号を1から数えている | perを0始まりにして再計算する |
| 結果が想定よりはるかに大きい | 利率の単位が期間と合っていない | 月次返済なら利率は年利÷12 |
| 結果がプラスで違和感 | pvをマイナスで指定している | 借入はpvをプラス、戻り値は -ISPMT(...) |
ISPMT関数の最頻出エラーは「期番号の0始まり」を見落とすことです。
IPMT関数のクセで per=1 を指定すると、第2期の値が返ってきてしまいます。
数式を入力する前に「ISPMTは0から数える」と意識するだけで、ほとんどのトラブルは防げます。
期番号がズレている例
たとえば、借入100万円・年利6%・36回返済で第1期の利息を求めたいケースを考えます。
誤: =-ISPMT(6%/12, 1, 36, 1000000) → 結果: 4,861円(実は第2期の値)
正: =-ISPMT(6%/12, 0, 36, 1000000) → 結果: 5,000円(正しく第1期の値)
最初の1回目だけでも手計算と照合する習慣をつけると、ズレに気づきやすいですよ。
ISPMT関数と似た財務関数の使い分け
財務関数には返済シミュレーション系の関数が複数あります。
場面に応じてどれを使えばよいか、5関数の早見表を作りました。
| 関数 | 計算対象 | 返済方式 | 期の数え方 |
|---|---|---|---|
| PMT | 毎期の返済額(一定) | 元利均等 | — |
| IPMT | 各期の利息 | 元利均等 | 1〜nper |
| PPMT | 各期の元金 | 元利均等 | 1〜nper |
| CUMIPMT | 開始期〜終了期の累計利息 | 元利均等 | 1〜nper |
| ISPMT | 各期の利息 | 元金均等 | 0〜nper-1 |
選び方のポイント
- 契約が 元利均等返済(住宅ローン等)→ PMT/IPMT/PPMT/CUMIPMTの組み合わせ
- 契約が 元金均等返済(銀行融資・社債等)→ ISPMT + 元金返済額(pv/nper)
元金均等返済では「元金部分」の関数は不要です。
元金返済額が pv ÷ nper で常に一定なので、わざわざ関数を使う必要がないからですね。
Googleスプレッドシート版のISPMT関数も同じ仕様で動きます。
スプレッドシートで作業している方はそちらの記事も参考にしてください。
まとめ
ExcelのISPMT関数について、基本的な使い方から実務での応用まで解説しました。
ポイントを振り返ります。
- ISPMT関数は 元金均等返済 の各期の利息を求める財務関数
- 構文は
=ISPMT(利率, 期, 期間, 現在価値)の4引数 - 期(per)は 0〜nper-1 の0始まり(IPMTと違うので注意)
- 借入額をプラスで指定すると戻り値はマイナスになるため、
-ISPMT(...)で受けるのが定番 - IPMTは元利均等返済、ISPMTは元金均等返済と覚えれば混同しない
- 銀行融資や社債のスケジュール表に向いている
元金均等返済の利息計算は、慣れてしまえばISPMT関数1つで完結します。
返済スケジュール表のテンプレートを作っておけば、どんな条件のローンでも数値を差し替えるだけで使い回せますよ。
関連する財務関数もあわせてチェックして、Excelでの返済シミュレーションを自由に組めるようにしていきましょう。
