ExcelのPV関数の使い方|現在価値を正確に計算する方法
「毎月の返済額から、いくらまで借りられるか知りたい。」
「将来もらえる年金は、今いくらの価値があるのだろう?」
そんなときに役立つのが、ExcelのPV関数です。
PV関数を使えば、将来のお金を今の価値に換算できますよ。
ExcelのPV関数とは?現在価値を求める財務関数
PV関数は、Excelに搭載された財務関数のひとつです。
「PV」は Present Value(現在価値)の略称です。
将来受け取るお金が「今いくらの価値か」を求めます。
現在価値(げんざいかち)とは、将来のお金を今の時点に換算した価値のこと。
たとえば年利3%なら、1年後の103万円は今の100万円と等価です。
この「逆算」を自動でやってくれるのがPV関数ですよ。
PV関数が特に役立つ場面は2つあります。
- ローンの借入可能額を逆算する(月々○万円払えるとき上限を知りたい)
- 年金・保険の現在価値を計算する(将来の受取額が今いくら相当か把握したい)
この記事では2つのユースケースを中心に解説します。
PMT関数の使い方を知っている方には、逆算の仕組みも詳しく説明しますよ。
PV関数の構文と引数の意味
=PV(rate, nper, pmt, [fv], [type])
引数は全部で5つです。
最初の3つが必須、残り2つは省略可能です。
| 引数 | 必須/省略可 | 省略時の既定値 | 意味 |
|---|---|---|---|
| rate | 必須 | — | 1期間あたりの利率 |
| nper | 必須 | — | 総支払回数 |
| pmt | 条件付き必須 | — | 毎期の定期支払額(元金+利息) |
| fv | 省略可 | 0 | 最終支払後の残高(将来価値) |
| type | 省略可 | 0 | 0=期末払い、1=期首払い |
rate と nper の単位は必ず揃えます。
月払いなら、年利を12で割って月利に変換します。
年払いなら、年利と年数をそのまま使います。
pmt と fv はどちらか一方を必ず指定します。
両方省略するとエラーになりますよ。
type引数(期末払い vs 期首払い)の違い
| type値 | 支払タイミング | 現在価値への影響 |
|---|---|---|
| 0(省略時) | 期末払い(一般的な年金) | 基準値 |
| 1 | 期首払い(期首年金) | type=0より高くなる |
期首払いは各支払いが1期分早まります。
割引く期間が1期短くなるため、現在価値が高くなりますよ。
数値例(年利6%・3年間・毎年¥100,000受取)
=PV(6%, 3, -100000, 0, 0) ' 期末払い → ¥267,301
=PV(6%, 3, -100000, 0, 1) ' 期首払い → ¥283,339
同じ受取条件でも、期首払いの方が約¥16,000ほど現在価値が高くなります。
基本例①:ローンの借入可能額を逆算する
シナリオ: 毎月¥28,951の返済なら、何円まで借りられるか。
- 年利:3%
- 返済期間:10年(120回払い)
セルに次のように入力します。
=PV(3%/12, 120, -28951)
結果は ¥-3,000,002(マイナス表示)になります。
マイナスになる理由は、後のセクションで詳しく説明します。
正の数で借入可能額を表示したい場合は、頭にマイナスをつけます。
=-PV(3%/12, 120, -28951)
→ 約¥3,000,002(≒300万円) が借入可能額です。
なぜ pmt をマイナスにするの?
返済額は「手元からお金が出ていく」ので、マイナスで入力します。
このルールはExcelの財務関数共通の符号規則(キャッシュフローサインコンベンション)です。
PMT関数で「借入300万円なら月々いくら?」と先に計算した方は、
そのPMT結果をそのままpmt引数に使えますよ。
→ 関連: PMT関数の使い方
基本例②:年金・保険の現在価値を計算する
シナリオ: 60歳から20年間、毎月¥50,000を受け取る年金。
割引率(わりびきりつ:現在価値に換算するための利率)を年3%として、今いくらの価値かを求めます。
=PV(3%/12, 240, -50000)
- rate:3%÷12(月利)
- nper:20年×12ヶ月=240回
- pmt:-50,000(受取額をマイナスで入力すると、正の現在価値が返る)
→ 結果は 約¥9,015,200(約901万円)
20年間の受取総額は1,200万円になる計算ですが、
割引率3%で現在価値に換算すると約901万円です。
今すぐ901万円をもらうのと等価というわけですよ。
応用例:一時払い受取(pmt=0・fvあり)のケース
毎月受け取るのではなく、将来の一時金の現在価値を求めるケース。
pmt を 0 にして、fv に将来受取額を指定します。
シナリオ: 10年後に受け取る100万円の満期保険金。
年利3%として、今の価値はいくらか。
=PV(3%, 10, 0, -1000000)
→ ¥744,094(約74.4万円)
10年後の100万円は、今の約74.4万円と等価です。
将来の金額が大きく見えても、割引くとかなり目減りしますよ。
fv には将来受取額をマイナスで入力します。
そうすると、結果がプラスの現在価値として返ってきます。
PV関数がマイナスになる理由と対処法
PV関数の結果がマイナスになるのは、符号規則が原因です。
Excelの財務関数は次のルールで動いています。
- 支払う(流出) → マイナス
- 受け取る(流入) → プラス
ローン計算では「払い出す原資を今いくら用意すべきか」を算出します。
pmt(返済額)をマイナスで入力すると、PVの結果もマイナスになります。
正の数で表示する方法は2つ。
方法①:数式の前にマイナスをつける
=-PV(3%/12, 120, -28951)
方法②:結果に -1 を掛ける
=PV(3%/12, 120, -28951) * -1
どちらでも同じ結果が得られますよ。
FV・NPV・PMTとの使い分け早見表
似た関数が多くて混乱しますよね。
以下の表で整理してみてください。
| 関数 | 何を求める? | キャッシュフロー | 主な用途 |
|---|---|---|---|
| PV | 現在価値 | 一定 | ローン借入額・年金現在価値 |
| FV | 将来価値(しょうらいかち) | 一定 | 積立預金の将来残高 |
| PMT | 定期支払額 | — | 毎月の返済額を算出 |
| NPV | 正味現在価値(しょうみげんざいかち) | 変動可 | 投資プロジェクトの評価 |
| NPER | 支払回数 | 一定 | 完済までの期間を算出 |
| RATE | 利率 | 一定 | 実質金利を逆算 |
PVとFVの違い
PVは「将来 → 現在」の方向で換算します。
FVは「現在 → 将来」の方向で換算します。
構文も対になっています。
- PV:
=PV(rate, nper, pmt, [fv], [type]) - FV:
=FV(rate, nper, pmt, [pv], [type])
PVで求めた値をFVに代入すると、元の値が戻ります。
逆関数の関係なので、セットで覚えておくと便利ですよ。
PVとNPVの違い
PVは毎期同額のキャッシュフロー専用です。
NPVは各期で異なる金額にも対応できます。
投資プロジェクトのように不均等な収益を評価するならNPVを使いましょう。
→ 関連: NPER関数の使い方 RATE関数の使い方
→ 関連: IPMT関数の使い方 PPMT関数の使い方
よくあるエラーと対処法
#VALUE! エラー
原因: 引数に数値以外(文字列・空白など)が入っている。
参照セルの書式を確認してください。
セルが「文字列」形式だと数値として計算されません。
書式を「数値」に変更してから再計算してみてください。
#NUM! エラー
原因: 利率・期間の組み合わせが不正、または解が収束しない。
よくある原因①:年利をそのまま入力してしまう。
月払いの場合は必ず 年利/12 と入力します。
' NG(年利をそのまま入力)
=PV(3%, 120, -28951)
' OK(月利に変換)
=PV(3%/12, 120, -28951)
よくある原因②:nper に誤った単位を使っている。
月払いなら「年数×12」が正しい回数です。
「10年ローン」を「10」と入力するミスが多いですよ。
まとめ:PV関数の使いどころを押さえよう
PV関数をひと言でまとめると「将来のお金を今の価値に換算する関数」です。
| 用途 | 入力方法 | 出力 |
|---|---|---|
| ローン借入可能額の逆算 | pmt=月返済額(マイナス) | 借入可能な最大金額 |
| 年金・保険の現在価値 | pmt=毎月受取額(マイナス) | 一時金換算での今の価値 |
| 一時払い受取の現在価値 | fv=将来受取額(マイナス) | 今の価値 |
まずはローン借入額の逆算から試してみてください。
PMT関数を使ったことがある方なら、すぐ使いこなせますよ。
→ 関連: CUMIPMT関数の使い方
