「このローン、実質の金利って何パーセントなんだろう?」
月々の返済額と総額はわかっていても、金利を逆算するのは手計算だとかなり大変ですよね。
スプレッドシートのRATE関数を使えば、返済期間・支払額・借入額を入力するだけで利率を一発で求められます。
この記事では、RATE関数の基本から実務で役立つ活用パターンまでまとめて紹介します。
RATE関数とは? — スプレッドシートで利率を逆算する関数
RATE関数(読み方: れーと)は、ローンや投資の利率を逆算する関数です。
名前は英語の「Rate(利率・割合)」からきています。
返済期間・定期支払額・元金(現在価値)がわかっていれば、それらの条件を満たす利率を自動で計算してくれます。
RATE関数にできることをまとめると、次のとおりです。
- ローンの実質金利を逆算する
- 積立投資の利回り(年率)を求める
- 複数の金融商品の利率を比較する
- 目標金額に到達するために必要な利率を調べる
NOTE
RATE関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。
RATE関数の書き方(構文と引数)
基本構文
=RATE(期間, 定期支払額, 現在価値, [将来価値], [支払期日], [推定値])
引数が6つありますが、必須は最初の3つだけです。順番に見ていきましょう。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 期間 | 必須 | 支払いの総回数(月払い3年なら36) |
| 定期支払額 | 必須 | 毎回の支払額(支出はマイナスで指定) |
| 現在価値 | 必須 | ローンの借入額や投資の元本(借入はプラス、投資はマイナス) |
| 将来価値 | 任意 | 最終的に残したい金額(省略時は0) |
| 支払期日 | 任意 | 0 = 期末払い(既定)、1 = 期首払い |
| 推定値 | 任意 | 利率の推定値(省略時は10%)。収束しない場合に指定する |
TIP
財務関数では「お金が出ていく方向をマイナス」「入ってくる方向をプラス」で表すルールがあります。ローン計算では借入額がプラス、返済額がマイナスになります。
符号のルール
RATE関数を正しく使うには、金額の符号(プラス・マイナス)が重要です。
| シーン | 現在価値(元本) | 定期支払額 | 将来価値 |
|---|---|---|---|
| ローン返済 | +(借入額) | -(返済額) | 0 |
| 積立投資 | 0 | -(積立額) | +(目標額) |
| 一括投資 | -(投資額) | 0 | +(受取額) |
符号を間違えると #NUM! エラーになります。「自分から出ていくお金はマイナス」と覚えておくと迷いませんよ。
RATE関数の基本的な使い方
ローンの月利を求める
3年(36回払い)のローンで、毎月3万円を返済し、借入額が100万円の場合の月利を求めてみましょう。
=RATE(36, -30000, 1000000)
結果は約 0.42%(月利)です。
返済額は「出ていくお金」なのでマイナスで指定しています。借入額は「受け取るお金」なのでプラスです。
月利を年利に変換する
RATE関数が返すのは「1期間あたりの利率」です。月払いで計算した場合は月利が返ります。
年利に変換するには12を掛けるだけです。
=RATE(36, -30000, 1000000) * 12
結果は約 5.1%(年利)となります。
結果をパーセント表示にする
RATE関数の結果は小数(0.0042…のような値)で表示されます。見やすくするには、セルの表示形式を「パーセント」に変更しましょう。
- セルを選択します
- 「表示形式」メニュー →「数値」→「パーセント」を選びます
- 必要に応じて小数点以下の桁数を調整します
RATE関数の実践的な使い方・応用例
住宅ローンの実質金利を逆算する
「月々9万円の返済で3,000万円を35年で返すローン」の金利を確認してみましょう。
=RATE(35*12, -90000, 30000000) * 12
期間は 35*12 = 420 回、返済額は -90000(月額)、借入額は 30000000 です。結果を12倍して年利に変換しています。
結果は約 1.37% です。提示された条件が妥当かどうか、客観的にチェックできますよ。
積立投資の利回りを求める
毎月2万円を10年間積み立てて、最終的に300万円になった場合の月利を年利換算で求めます。
=RATE(120, -20000, 0, 3000000) * 12
期間は 120(10年 x 12か月)、積立額は -20000、現在価値は 0(元手なし)、将来価値は 3000000 です。
結果は約 4.4% の年利です。積立投資の実績評価に使えます。
自動車ローンのプラン比較
複数のローンプランを比較するときに、RATE関数で金利を揃えて比較できます。
| A列: プラン名 | B列: 期間(月) | C列: 月額 | D列: 借入額 | E列: 年利 | |
|---|---|---|---|---|---|
| 2行目 | プランA | 36 | -25000 | 800000 | 数式 |
| 3行目 | プランB | 48 | -20000 | 800000 | 数式 |
| 4行目 | プランC | 60 | -17000 | 800000 | 数式 |
E2セルに次の数式を入力します。
=RATE(B2, C2, D2) * 12
この数式をE3、E4にコピーすれば、各プランの年利が一覧で比較できます。
目標利率に必要な積立額を調べる(RATE + PMT の連携)
「年利3%で運用できるなら、10年後に500万円貯めるには毎月いくら積み立てればいい?」という問いには、RATE関数で求めた利率をPMT関数に渡して計算できます。
=PMT(3%/12, 120, 0, 5000000)
月利は 3%/12、期間は 120 か月、将来価値は 5000000 です。結果は約 -35,780円(毎月の積立額)になります。
このようにRATE関数と他の財務関数を組み合わせると、さまざまなシミュレーションが作れますよ。
よくあるエラーと対処法
RATE関数で「思った結果にならない」ケースをまとめました。
| 症状 | 原因 | 対処法 |
|---|---|---|
| #NUM! エラーが出る | 符号の指定が間違っている | 支出(返済・積立)はマイナス、収入(借入・受取)はプラスにする |
| #NUM! エラーが出る | 計算が収束しない | 第6引数の「推定値」に近い値(例: 0.05)を指定する |
| 結果が極端に小さい | 月利が返っている | *12 を掛けて年利に変換する |
| 結果がマイナスになる | 支払総額が借入額を下回っている | 期間と支払額の組み合わせを確認する |
| 0% が返る | 将来価値と現在価値+支払総額が一致している | 利息が発生しない条件になっていないか確認する |
TIP
#NUM! エラーが出たら、まず符号を確認してみてください。RATE関数のエラーの多くは符号の間違いが原因です。
Excelとの違い
RATE関数はExcelとGoogleスプレッドシートで完全に同じ動作です。
| 項目 | Excel | Googleスプレッドシート |
|---|---|---|
| 構文 | =RATE(期間, 定期支払額, 現在価値, …) | =RATE(期間, 定期支払額, 現在価値, …) |
| 引数の数 | 6(必須3 + 任意3) | 6(必須3 + 任意3) |
| 戻り値 | 1期間あたりの利率 | 1期間あたりの利率 |
| 収束アルゴリズム | ニュートン法(反復計算) | ニュートン法(反復計算) |
引数名・動作・計算ロジックのすべてが同じです。Excelでの使い方はExcelのRATE関数の記事で詳しく解説しています。
まとめ
RATE関数は、ローンや投資の利率を逆算できる関数です。
ポイントを整理します。
- 構文は
=RATE(期間, 定期支払額, 現在価値, [将来価値], [支払期日], [推定値]) - 必須引数は3つ(期間・定期支払額・現在価値)
- 結果は「1期間あたりの利率」なので、月払いなら
*12で年利に変換する - 符号が重要: 支出はマイナス、収入はプラスで指定する
- #NUM! エラーの多くは符号の間違い。推定値の指定で解決することもある
- PMT関数やFV関数と組み合わせれば、返済・積立のシミュレーションが広がる
- ExcelのRATE関数と完全に同じ動作で、互換性も安心
まずは =RATE(36, -30000, 1000000) で「100万円を月3万円ずつ36回返すときの月利」を計算してみてください。
