- 作成日 : 2025年8月25日
PPMT関数の使い方:ローン返済の元本部分を正確に計算する方法
PPMT関数は、ローンの定期支払額のうち元本返済部分を計算するエクセルの財務関数です。住宅ローンや事業融資において、各回の返済額がどれだけ元本の減少に寄与しているかを把握できます。
利息と元本の内訳を明確にすることで、繰上返済の効果シミュレーションや税務処理、資金計画の立案などに活用できます。本記事では、PPMT関数の基本的な使い方から実践的な活用法、他の財務関数との組み合わせまで、具体例を交えて詳しく解説します。
目次
PPMT関数の基本的な使い方
PPMT関数とは
PPMT関数は「Principal Payment(元本支払い)」の略で、元利均等返済方式のローンにおいて、指定した期の支払額のうち元本返済に充てられる金額を計算します。毎回の返済額は一定でも、その内訳は期が進むにつれて変化し、初期は利息部分が多く、後期は元本部分が多くなります。
この関数を使用することで、ローンの返済スケジュール全体を通じて、いつ、どれだけの元本が減少するかを正確に把握できます。IPMT関数(利息部分の計算)と組み合わせることで、返済の完全な内訳を作成できます。
基本構文と引数の詳細
PPMT関数の構文:
=PPMT(利率, 期, 期間, 現在価値, [将来価値], [支払期日])
- 利率:期間あたりの利率(年利を月利に変換する場合は12で割る)
- 期:元本返済額を求めたい期(1から期間までの数値)
- 期間:返済の総期間数
- 現在価値:借入額(ローンの元本)
- 将来価値(省略可能):最終的な残高、省略時は0
- 支払期日(省略可能):0=期末払い、1=期首払い、省略時は0
基本的な計算例
3000万円の住宅ローン(金利2%、30年返済)の計算例
第1回目の元本返済額:
=PPMT(2%/12, 1, 30*12, 30000000)
結果:約-61,179円(負の値は支払いを示す)
第120回目(10年目)の元本返済額:
=PPMT(2%/12, 120, 30*12, 30000000)
結果:約-74,539円
最終回(第360回)の元本返済額:
=PPMT(2%/12, 360, 30*12, 30000000)
結果:約-110,710円
PPMT関数の実践的な利用シーン
住宅ローンの返済計画表作成
詳細な返済スケジュールを作成し、元本の減少推移を可視化できます。
返済計画表の基本構成:
A列:返済回数(1~360)
B列:返済前残高
C列:元本返済額 =PPMT($B$1/12, A2, $B$2*12, $B$3)
D列:利息支払額 =IPMT($B$1/12, A2, $B$2*12, $B$3)
E列:返済後残高 =B2+C2
累計元本返済額の計算:
10年後までの元本返済額: =SUM(PPMT($B$1/12, ROW(1:120), $B$2*12, $B$3))
元本返済ペースの分析:
前半15年の元本返済率: =ABS(前半元本返済額合計/借入額)*100
後半15年の元本返済率: =ABS(後半元本返済額合計/借入額)*100
繰上返済シミュレーション
繰上返済による利息削減効果を計算できます。
5年後に100万円繰上返済する場合:
通常の5年後残高: =借入額+SUM(PPMT(利率/12, ROW(1:60), 期間*12, 借入額))
繰上後の残高: =通常の5年後残高+1000000
新期間: =NPER(利率/12, PMT額, -繰上後の残高)
利息削減額: =(通常総返済額-繰上後総返済額)
最適な繰上返済時期の検討:
各年での繰上返済効果を比較
=利息削減額/繰上返済額(効率性の指標)
事業融資の資金計画
設備投資ローンの元本返済スケジュールを管理します。
キャッシュフロー計画への組み込み:
年間元本返済額: =SUM(PPMT(利率/12, ROW(開始:終了), 総期間, 借入額))
営業CF – 元本返済額 = フリーキャッシュフロー
複数ローンの統合管理:
ローンA元本: =PPMT(利率A/12, 期, 期間A*12, 借入額A)
ローンB元本: =PPMT(利率B/12, 期, 期間B*12, 借入額B)
月次元本返済合計: =ローンA元本+ローンB元本
税務処理での活用
支払利息の税務上の取り扱いのため、元本と利息を分離します。
年間支払利息の集計:
当年度利息: =SUMPRODUCT(IPMT(利率/12, ROW(開始月:終了月), 総期間, 借入額))
借入金残高の確認:
期末借入金残高: =借入額+SUM(PPMT(利率/12, ROW(1:経過月数), 総期間, 借入額))
PPMT関数の応用・他関数との組み合わせ
返済条件の比較分析
異なる条件でのローンを比較検討します。
金利差による元本返済ペースの違い:
金利1.5%: =PPMT(1.5%/12, 期, 360, 30000000)
金利2.0%: =PPMT(2.0%/12, 期, 360, 30000000)
差額: =ABS(金利1.5%)-ABS(金利2.0%)
返済期間による影響:
20年返済: =PPMT(2%/12, 期, 240, 30000000)
30年返済: =PPMT(2%/12, 期, 360, 30000000)
元本返済速度比: =ABS(20年)/ABS(30年)
動的な返済分析
インタラクティブな返済計算:
=PPMT(金利セル/12, SEQUENCE(期間*12), 期間*12, 借入額)
Excel 365の動的配列機能を使用
データテーブルでの感度分析:
行:金利(1%~5%)
列:返済期間(15年、20年、25年、30年)
値:10年後の元本残高
グラフ化による可視化
元本返済の推移を視覚的に表現します。
元本・利息の推移グラフ:
X軸:返済回数
主Y軸:元本返済額(PPMT)、利息支払額(IPMT)
第2Y軸:残高推移
累積グラフの作成:
累積元本: =SUM($C$2:C2)(C列が元本返済額)
累積利息: =SUM($D$2:D2)(D列が利息支払額)
複雑な返済スキームへの対応
段階金利や据置期間がある場合の計算方法です。
段階金利(当初5年1%、以降2%):
=IF(期<=60,
PPMT(1%/12, 期, 360, 30000000),
PPMT(2%/12, 期-60, 300, 残高計算))
据置期間がある場合:
=IF(期<=据置期間,0,
PPMT(利率/12, 期-据置期間, 返済期間*12, 借入額))
よくあるエラーと対処法
#NUM!エラーの解決
期の値が不適切な場合に発生します。
エラーの原因と対策:
=IF(OR(期<1, 期>期間), “期の値が不正”, PPMT(…))
期の自動調整:
=PPMT(利率, MIN(MAX(期, 1), 期間), 期間, 現在価値)
#VALUE!エラーへの対応
数値以外の値が引数に含まれる場合の対処法です。
入力値の検証:
=IF(AND(ISNUMBER(利率), ISNUMBER(期), ISNUMBER(期間)),
PPMT(…),
“数値を入力してください”)
文字列の数値変換:
=PPMT(VALUE(利率テキスト)/12, VALUE(期), VALUE(期間)*12, VALUE(借入額))
符号の混乱を避ける
返済額の符号を統一的に扱う方法です。
常に正の値で表示:
=ABS(PPMT(…))
条件による符号の調整:
=PPMT(…) * IF(表示形式=”支出”, -1, 1)
精度の問題と対策
大きな金額での計算精度を確保します。
適切な丸め処理:
=ROUND(PPMT(…), 0)
円単位での正確な計算:
=INT(PPMT(…))
累積誤差の回避:
最終期の調整: =前期残高(最終期のみ残高で調整)
PPMT関数で元本返済額を正確に計算
PPMT関数は、Excelでローンの各期における元本返済額を計算するための財務関数です。元利均等返済方式に対応し、返済初期は利息が多く、後半にかけて元本の割合が増えていくローンの仕組みを可視化できます。
住宅ローンや事業融資の返済計画表、繰上返済シミュレーション、税務処理など、資金管理に幅広く活用されています。
IPMT関数との組み合わせにより、返済額の利息と元本を分けて分析でき、資金の流れや残高の変化を正確に把握できます。
また、ROUNDやABSなどの関数と併用することで、金額表示の精度や符号の扱いも柔軟に調整可能です。
PPMT関数を正しく使いこなすことで、長期的な返済計画の見通しがより明確になります。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
LINEST関数の使い方:エクセル初心者でもできる回帰分析
LINEST関数は、エクセルで回帰分析を行うための高機能な統計関数です。この記事では、売上予測やコスト分析といった実務で役立つ使い方から、エラーの対処法まで、初心者でも理解できるよう段階的に解説します。複雑に見える統計処理も、基本操作を理解…
詳しくみるエクセルで取り消し線を入れるには?ショートカットも紹介
エクセルを使用していると、特定の情報やタスクを視覚的に分かりやすくするために取り消し線を入れたくなることがあります。取り消し線を使うことで、完了した項目や不要な内容を簡単に示すことができ、作業効率が向上します。本記事では、エクセルで取り消し…
詳しくみるFILTER関数の使い方とは?複数条件や複数範囲を指定する方法
FILTER関数は、ExcelやGoogleスプレッドシートでデータを柔軟に抽出するための強力なツールです。特に、複数の条件を設定して特定のデータを迅速にフィルタリングできる点が魅力です。この記事では、FILTER関数の基本的な使い方から、…
詳しくみるASC関数の使い方を基本から応用、エラー対処法まで解説
ExcelのASC関数について、初心者にも分かりやすく解説します。基本的な使い方から、データクレンジングや集計作業での具体的な利用シーン、TRIM関数など他の関数との組み合わせ、エラーの原因と対処法まで網羅。この記事を読めば、ASC関数をマ…
詳しくみるエクセルで引き算する方法と関数まとめ
エクセルはデータ処理において非常に便利なツールです。その中でも、引き算は基本的かつ重要な機能の一つと言えます。本記事では、エクセルでの引き算を行う方法や関数について詳しく解説します。また、時間や日付の引き算についても触れ、引き算がうまくでき…
詳しくみるFIND関数の使い方や利用シーンをわかりやすく解説
FIND関数は、テキスト内で特定の文字列の位置を探すための非常に便利なツールです。ExcelやGoogleスプレッドシートなどで利用でき、データ分析やレポート作成の際に大いに役立ちます。この記事では、FIND関数の基本的な使い方から実際の利…
詳しくみる