スプレッドシートのPPMT関数の使い方|元金支払額

スポンサーリンク

「毎月の返済額のうち、元金ってどれくらい減っているんだろう?」

ローンの返済額は毎月同じでも、その中身は元金と利息に分かれています。返済が進むにつれて元金の割合が増えていくのですが、具体的な金額は計算しないとわかりませんよね。

スプレッドシートのPPMT関数を使えば、指定した回の返済額のうち元金部分だけをピンポイントで取り出せます。

この記事では、PPMT関数の基本から返済スケジュール表の作り方まで、実務で使えるパターンをまとめて紹介します。

PPMT関数とは? — スプレッドシートで元金部分を計算する関数

PPMT関数(読み方: ぴーぴーえむてぃー)は、ローン返済の各回で支払う元金部分を計算する関数です。

名前は英語の「Principal Payment(元金の支払い)」の略です。

たとえば「36回払いの10回目で元金はいくら減った?」のように、特定の回の元金額だけを取り出せます。

PPMT関数にできることをまとめると、次のとおりです。

  • 指定した回の返済額のうち元金部分を取り出す
  • 返済スケジュール表で月ごとの元金内訳を一覧にする
  • IPMT関数と組み合わせて元金と利息の内訳を把握する
  • 返済初期と後期で元金がどう変わるかシミュレーションする

NOTE

PPMT関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。

PPMT関数の書き方(構文と引数)

基本構文

=PPMT(利率, 期, 期間数, 現在価値, [将来価値], [期首期末])

カッコの中に利率・期・期間数・現在価値の4つを指定します。将来価値と期首期末は省略できます。

引数の説明

引数必須/任意説明
利率必須1期間あたりの利率。年利を月利に変換して指定する(年利/12)
必須元金を求めたい回数。1から期間数の範囲で指定する
期間数必須支払い回数の合計。年数を月数に変換して指定する(年数*12)
現在価値必須借入額(ローンの場合)。正の数で指定する
将来価値任意支払い完了後の残高。省略すると0(完済)として扱われる
期首期末任意0=各期の末に支払い(期末払い)、1=各期の初めに支払い(期首払い)。省略すると0

TIP

PPMT関数はIPMT関数と構文がまったく同じです。違いは「元金を返すか、利息を返すか」だけ。セットで覚えておくと便利ですよ。

PPMT関数の基本的な使い方

まずはシンプルな例で動きを確認してみましょう。

1回目の元金を求める

100万円を年利5%で3年間(36回払い)で返済する場合、1回目の元金を計算します。

=PPMT(5%/12, 1, 36, 1000000)

結果は -25,804 です。

毎月の返済額は29,971円(PMT関数で計算)で、そのうち利息が4,167円、残りの25,804円が元金の返済にあてられます。

結果がマイナスになる理由

PPMT関数の結果がマイナスになるのは、「支出」を表しているからです。

スプレッドシートの財務関数では、お金の流れを方向で区別します。

お金の方向符号
受け取る(入金)プラス借入額(お金を受け取る)
支払う(出金)マイナス元金の返済

表示上マイナスが気になる場合は、数式の前にマイナスを付けて符号を反転させましょう。

=-PPMT(5%/12, 1, 36, 1000000)

これで 25,804 と表示されます。

返済が進むと元金は増えていく

同じローン条件で、返済回によって元金がどう変わるか見てみましょう。

数式結果説明
=PPMT(5%/12, 1, 36, 1000000)-25,8041回目(利息が多いので元金は少なめ)
=PPMT(5%/12, 12, 36, 1000000)-27,01212回目(1年後)
=PPMT(5%/12, 24, 36, 1000000)-28,39424回目(2年後)
=PPMT(5%/12, 36, 36, 1000000)-29,84736回目(最終回は元金がほぼ全額)

返済が進むほど利息が減り、そのぶん元金の返済額が増えていきます。これが元利均等返済の特徴です。

PPMT関数の実践的な使い方・応用例

住宅ローンの元金を計算する

住宅ローン3,000万円を年利1.5%・35年で返済する場合、初回の元金を計算します。

=PPMT(1.5%/12, 1, 35*12, 30000000)

結果は -54,355 です。月々の返済額は約91,855円(PMT関数で計算)なので、初回は返済額の約59%が元金です。

10年後(120回目)の元金も確認してみましょう。

=PPMT(1.5%/12, 120, 35*12, 30000000)

結果は -63,067 です。10年経つと元金の割合が増えて、返済額の約69%が元金にあてられるようになります。

返済スケジュール表を作る

PPMT関数とIPMT関数(利息部分を返す関数)を組み合わせると、月ごとの返済内訳表が作れます。

100万円を年利5%・3年で返済するケースで説明します。

内容数式(2行目の例)
A列回数1, 2, 3 … 36
B列返済額=-PMT(5%/12, 36, 1000000)
C列元金部分=-PPMT(5%/12, A2, 36, 1000000)
D列利息部分=-IPMT(5%/12, A2, 36, 1000000)
E列残高=1000000-SUMPRODUCT(-PPMT(5%/12, ROW(INDIRECT("1:"&A2)), 36, 1000000))

A列に1から36までの連番を入れたら、B〜E列の数式を下方向にコピーするだけです。

毎回の返済額は一定ですが、元金と利息の内訳が回ごとに変わる様子がひと目でわかります。

TIP

PMT = PPMT + IPMT という関係が成り立ちます。毎回の返済額(PMT)は元金部分(PPMT)と利息部分(IPMT)の合計です。この3つをセットで使うのが返済スケジュール表の基本ですよ。

残高推移をシミュレーションする

「あと何回払えば残高が半分になるか」を知りたい場合は、PPMT関数の累計で残高を計算できます。

=1000000 - SUMPRODUCT(-PPMT(5%/12, ROW(INDIRECT("1:12")), 36, 1000000))

この数式で12回(1年)払った後の残高が出ます。結果は約 682,634 円です。

回数の部分を変えれば、任意の時点の残高をすぐに確認できますよ。

期首払いと期末払いで元金を比較する

6つ目の引数で支払いタイミングを切り替えると、元金額が変わります。

=PPMT(5%/12, 1, 36, 1000000, 0, 0)  → -25,804(期末払い)
=PPMT(5%/12, 1, 36, 1000000, 0, 1)  → -25,804(期首払い)

期首払いでは毎月の返済額自体が少し安くなります。利息が減る分だけ返済総額も少なくなるため、同じ回数で同じ元金を返していくことになります。

PPMT関数とIPMT関数の違い

PPMT関数とIPMT関数は、返済額の「内訳」を別々に取り出す関数です。

比較項目PPMT関数IPMT関数
役割元金部分を返す利息部分を返す
構文=PPMT(利率, 期, 期間数, 現在価値)=IPMT(利率, 期, 期間数, 現在価値)
返済初期金額が小さい金額が大きい
返済後期金額が大きい金額が小さい
合計の関係PPMT + IPMT = PMT 

100万円・年利5%・3年の1回目で比較してみましょう。

関数結果意味
PMT-29,971返済額の合計
PPMT-25,804そのうち元金分
IPMT-4,167そのうち利息分

-25,804 + (-4,167) = -29,971 と、ぴったり合計がPMTの結果と一致します。

使い分けのポイント: 「元金がいくら減ったか」を知りたいならPPMT、「利息をいくら払っているか」を知りたいならIPMTを使ってください。

よくあるエラーと対処法

PPMT関数で「思った結果にならない」ケースをまとめました。

症状原因対処法
元金が異常に大きい年利をそのまま指定している月利に変換する(年利/12)
#NUM! エラーが出る「期」が0以下、または期間数を超えている1以上かつ期間数以下の整数を指定する
#VALUE! エラーが出る引数に文字列を指定している数値のみ指定する
結果がマイナスになる仕様どおりの動作(支出を表す)符号反転したいなら =-PPMT(...)
期間数と期の単位が合わない期間数を月数、期を年数で指定してしまった両方とも同じ単位(月数)で揃える

TIP

最も多いミスは「年利と月利の変換忘れ」と「期の範囲ミス」です。月払いなら年利を12で割り、期は1から「年数x12」の範囲で指定してください。

Excelとの違い

PPMT関数はExcelとGoogleスプレッドシートで完全に同じ動作です。

項目ExcelGoogleスプレッドシート
構文=PPMT(利率, 期, 期間数, 現在価値, [将来価値], [期末])=PPMT(利率, 期, 期間数, 現在価値, [将来価値], [期首期末])
動作指定した期の元金を返す指定した期の元金を返す
結果の符号マイナス(支出)マイナス(支出)
省略時の動作将来価値=0, 期末=0将来価値=0, 期首期末=0

引数名の表記が若干異なるだけで、機能は完全に同じです。

まとめ

PPMT関数は、ローン返済の各回で支払う元金部分を計算する関数です。

ポイントを整理します。

  • 構文は =PPMT(利率, 期, 期間数, 現在価値, [将来価値], [期首期末])
  • 利率は月利(年利/12)、期間数は月数(年数*12)で指定する
  • 「期」に何回目かを指定すると、その回の元金だけを取り出せる
  • 返済初期は元金が少なく、返済が進むほど元金の割合が増えていく
  • IPMT関数と組み合わせれば返済スケジュール表が作れる
  • PMT = PPMT + IPMT の関係を覚えておくと便利
  • ExcelのPPMT関数と完全に同じ動作で、互換性も安心

まずは =PPMT(5%/12, 1, 36, 1000000) で100万円ローンの初回元金を確認してみてください。


関連記事

タイトルとURLをコピーしました