「このローン、毎月いくら返すことになるんだろう?」。住宅や車の購入を検討するとき、返済額が気になりますよね。
電卓でひたすら計算するのは大変ですし、ざっくり計算で見積もりを間違えるのも怖いところです。
そんなときに頼りになるのが、ExcelのPMT関数です。この記事では、PMT関数の使い方をわかりやすく解説します。基本の構文から、ローン返済や積立シミュレーションの実例、結果がマイナスになる理由と対処法まで網羅しています。
PMT関数とは?読み方と基本の役割
PMT関数(読み方:ピーエムティー関数)は、一定利率のローンや積立の定期支払額を計算する関数です。英語の「Payment(支払い)」の略が名前の由来になっています。
たとえば「年利1.5%で3,000万円を35年返済したら、毎月いくら?」といった計算が、数式ひとつで完了します。
PMT関数でできることをまとめると、次のとおりです。
- ローンの毎月返済額(元利均等払い)を求められる
- 目標金額に向けた毎月の積立額を計算できる
- 利率と返済回数を変えたシミュレーションもかんたん
- Excel 2007以降、Microsoft 365で使える
返済額に含まれるのは元金と利息です。税金・手数料・保証料は含まれない点だけ覚えておきましょう。
PMT関数の書き方(構文と引数の意味)
まずはPMT関数の構文を確認しましょう。
=PMT(利率, 期間, 現在価値, [将来価値], [支払期日])
引数は全部で5つ。最初の3つが必須で、残り2つは省略できます。
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 利率(rate) | 必須 | 1期あたりの利率。月払いなら年利÷12 |
| 期間(nper) | 必須 | 支払いの総回数。月払いなら年数×12 |
| 現在価値(pv) | 必須 | 借入額(ローン)。元金を指定する |
| 将来価値(fv) | 省略可 | 最終的に残す金額。省略時は0 |
| 支払期日(type) | 省略可 | 0=期末払い(省略時)、1=期首払い |
引数(1) 利率(年利→月利への変換方法)
PMT関数の利率には「1回の支払いあたりの利率」を指定します。ローンの金利は年利で表示されることがほとんどですよね。月払いの場合は年利を12で割って月利に変換してください。
=PMT(1.5%/12, ...) ← 年利1.5%を月利に変換
「年利÷12」を忘れると、とんでもない金額が返ってきます。ここが一番ミスしやすいポイントなので注意してくださいね。
引数(2) 期間(年数→月数への変換方法)
期間には「支払いの総回数」を指定します。月払いで35年返済なら、35×12=420回です。
=PMT(..., 35*12, ...) ← 35年を月数(420回)に変換
利率と期間は必ず単位を揃えましょう。月払いなら両方とも月ベースにするのがルールです。
引数(3) 現在価値・将来価値・支払期日
現在価値(pv) にはローンの借入額を指定します。3,000万円のローンなら30000000です。
将来価値(fv) は、最後の支払い後に残したい金額です。ローンの場合は完済するので0(省略でOK)。積立シミュレーションでは目標金額を指定します。
支払期日(type) は、月初払いか月末払いかの指定です。ほとんどのローンは期末払い(0)なので、省略して問題ありません。
結果がマイナスになる理由と対処法
なぜマイナスで返るのか(キャッシュフローの符号ルール)
PMT関数を使って最初に戸惑うのが、結果がマイナスで表示されることです。
=PMT(1.5%/12, 35*12, 30000000)
→ -91,855
これはバグではありません。Excelの財務関数には「キャッシュフローの符号ルール」があります。
- 手元から出ていくお金 → マイナス
- 手元に入ってくるお金 → プラス
ローンの返済は「手元からお金が出ていく」行為なので、マイナスで返るのが正しい動作です。
プラスで表示したい場合のABS関数の組み合わせ
「マイナス表記だと見づらい」という場合は、次の2つの方法で正の数に変換できます。
方法1:先頭にマイナスをつける
=-PMT(1.5%/12, 35*12, 30000000)
→ 91,855
方法2:ABS関数で絶対値にする
=ABS(PMT(1.5%/12, 35*12, 30000000))
→ 91,855
どちらでも結果は同じです。個人的にはシンプルな方法1がおすすめですよ。
実例(1) 住宅ローンの毎月返済額を計算する
年利と返済年数から月々の支払額を求める
住宅ローンの返済額をPMT関数で計算してみましょう。条件は次のとおりです。
| 項目 | 値 |
|---|---|
| 借入額(元金) | 3,000万円 |
| 年利 | 1.5% |
| 返済期間 | 35年(420回) |
数式はこうなります。
=PMT(1.5%/12, 35*12, 30000000)
→ -91,855
毎月の返済額は約91,855円です。プラスで表示したい場合は先頭にマイナスを付けましょう。
=-PMT(1.5%/12, 35*12, 30000000)
→ 91,855
35年間の返済総額は91,855円×420回=約3,858万円。利息分は約858万円になる計算です。
年単位・月単位の単位ズレに注意
よくあるミスが、利率と期間の単位を揃え忘れるケースです。
× =PMT(1.5%, 35, 30000000) ← 年利・年数のまま → 約-186万円/年?
○ =PMT(1.5%/12, 35*12, 30000000) ← 月利・月数に変換 → -91,855円/月
年利をそのまま入れると、年単位の返済額が返ってきます。月々の返済額を求めるなら、「利率÷12」「年数×12」は必ずセットで指定してくださいね。
実例(2) 車のローン返済額を計算する
頭金あり・ボーナス払いなしのケース
次に、車のローンを計算してみましょう。
| 項目 | 値 |
|---|---|
| 車両価格 | 250万円 |
| 頭金 | 50万円 |
| 借入額(元金) | 200万円 |
| 年利 | 3.0% |
| 返済期間 | 5年(60回) |
頭金を差し引いた200万円が実際の借入額です。
=-PMT(3%/12, 5*12, 2000000)
→ 35,937
毎月の返済額は約35,937円です。5年間の返済総額は35,937円×60回=約215.6万円。利息分は約15.6万円ですね。
なお、ボーナス併用払い(年2回の増額返済)はPMT関数単体では計算できません。ボーナス払いを想定する場合は、通常返済分とボーナス返済分を分けてそれぞれPMT関数で計算する必要があります。
実例(3) 目標金額に向けた積立額を計算する
将来価値(fv)を使った積立シミュレーション
PMT関数はローンだけでなく、積立計算にも使えます。「子どもの教育資金を18年で500万円貯めたい」というケースを考えてみましょう。
| 項目 | 値 |
|---|---|
| 目標金額(将来価値) | 500万円 |
| 年利 | 0.5% |
| 積立期間 | 18年(216回) |
現在価値ゼロ・将来価値ありの設定方法
積立シミュレーションでは、現在価値(pv)を0、将来価値(fv)に目標金額を指定します。
=-PMT(0.5%/12, 18*12, 0, 5000000)
→ 22,127
毎月約22,127円ずつ積み立てれば、18年後に500万円に到達する計算です。
ポイントは第3引数の現在価値を0にすることです。「今は手元にゼロ円、将来500万円にしたい」という意味になります。
=PMT(利率, 期間, 0, 目標金額)
↑ pv=0(手元ゼロからスタート)
もし100万円の元手がある状態から積み立てる場合は、現在価値に100万円を指定します。
=-PMT(0.5%/12, 18*12, 1000000, 5000000)
このように条件を変えて「毎月いくら積み立てればいいか」をかんたんにシミュレーションできますよ。
NPER関数・RATE関数との使い分け
PMT関数は財務5関数(RATE・NPER・PMT・PV・FV)のひとつです。5つの要素のうち4つがわかれば、残り1つを求められるという関係になっています。
返済回数を調べたいならNPER関数
「毎月5万円返済したら何回で完済できる?」という疑問にはNPER関数を使います。
=NPER(1.5%/12, -50000, 30000000)
PMT関数が「回数と利率から支払額を求める」のに対し、NPER関数は「支払額と利率から回数を求める」関数です。
利率を逆算したいならRATE関数
「毎月10万円、30年で返済するには金利何%まで大丈夫?」という計算にはRATE関数が使えます。
=RATE(30*12, -100000, 30000000)*12
RATE関数は月利を返すので、年利に戻すには12を掛けましょう。
3つの関数の使い分けを表にまとめます。
また、PMT関数の返済額は「元金+利息」の合計です。内訳を知りたいときは、PPMT関数(元金部分)とIPMT関数(利息部分)を使うと、各回の内訳を確認できます。
まとめ
この記事では、ExcelのPMT関数の使い方をローン返済と積立の実例を交えて解説しました。
ポイントをおさらいしましょう。
- PMT関数は「定期支払額」を求める関数(読み方:ピーエムティー)
- 構文は
=PMT(利率, 期間, 現在価値, [将来価値], [支払期日]) - 月払いなら「年利÷12」「年数×12」の単位変換を忘れずに
- 結果がマイナスなのはキャッシュフローの符号ルール。=-PMT(…)で正の値に変換できる
- ローン計算は現在価値に借入額、積立計算は将来価値に目標額を指定する
- 返済回数を求めるならNPER関数、利率の逆算にはRATE関数を使い分ける
住宅ローンや車のローンを検討するとき、PMT関数を使えばExcel上でさっとシミュレーションできます。条件を変えて「もし金利が0.5%上がったら?」「返済期間を5年短くしたら?」と比較するのもかんたんです。ぜひ試してみてくださいね。
関連する関数の使い方も、あわせてチェックしてみてください。
