🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

ExcelのFV・PV関数 — 将来価値・現在価値と「5の法則」

|

ExcelのFV・PV関数 — 将来価値・現在価値と「5の法則」

要点FV は、支払いの流れ(および/または期首残高)が将来いくらの価値に なるかを返します。PV は、将来の金額や支払いの流れが今日いくらの価値かを 返します。どちらも PMT同じ方程式を、別の未知数に ついて解いたものです。変数は5つ——ratenperpmtpvfv——で、Excel は 未知数ごとに関数を1つ用意しているので、どれか4つがわかれば5つ目が手に入ります。 すべてを支配するのは同じ符号の規約です:入れるお金は負、戻ってくるお金は正。 すべての Excel バージョンで動作します。

=FV(6%/12, 10*12, -500)        ' 年6%で月$500を10年積み立てる -> 81939.67
=PV(5%/12, 20*12, -1000)       ' 月$1,000を20年受け取る流れは今いくら? -> 151525.31
=FV(6%/12, 10*12, -500, -1000) ' 同じ積立プランに、すでに口座にある$1,000を加える
=RATE(10*12, -500, 0, 81939.67)*12  ' 数値から年利を逆算する -> 6%

どの財務の教科書も「貨幣の時間価値」で始まり、指数まみれの数式を1ページ丸ごと 暗記させます。Excel はそのページを、実は1つの関数が5つの顔を持っているだけの、5つの 関数に畳み込みます。それが見えた瞬間、FVPV は覚えるべき2つの別物ではなく、 同じ関係式について尋ねる2つの問いになります。

この記事で学べること

  • 5の法則:5つの変数、未知数ごとに1つの関数
  • FV — 積立プラン(あるいは任意の一括金額)の将来価値
  • PV — 将来の金額や支払いの流れが、今日いくらの価値か
  • 符号の規約が、あなたの答えが意味をなすかどうかを決める理由
  • type 引数:期末払い 対 期首払い(期首払い年金)
  • RATENPER — 利率と期間数を求める

5の法則

FVPVPMTRATENPER の下には、5つの量を結ぶ1つの方程式があります:

  • rate — 1期あたりの利率
  • nper — 期間数
  • pmt — 毎期の支払い
  • pv — 今日の価値(現在価値)
  • fv — 最後の価値(将来価値)

このうち4つを与えれば、5つ目が決まります。Excel は、それぞれの関数を、解く対象の 変数にちなんで名付けているだけです:

未知数 関数 答える問い
支払額 PMT 一定の支払額はいくら?
将来価値 FV いくらまで増える?
現在価値 PV 今いくらの価値?
利率 RATE どんな利回りを意味する?
期間 NPER どれくらいかかる?

だからこそ、5つすべてで引数がこれほど似ているのです——同じ方程式のスロットだから です。規約を一度身につければ、ここのどの関数も同じように読めます。

FV — 積立プランの将来価値

=FV(rate, nper, pmt, [pv], [type]) は「毎期お金を積み立てたら、最後にいくらに なる?」に答えます。

=FV(6%/12, 10*12, -500)        ' 年6%で月$500を10年積み立てる -> 81939.67
=FV(6%/12, 10*12, -500, -1000) ' 同じだが、すでに$1,000を積み立てた状態から始める -> 83759.07
=FV(6%/12, 10*12, 0, -10000)   ' 積立なし:$10,000だけが10年成長する -> 18193.97

pmt-500 なのは、口座へお金を払い込んでいるからです。FVで返って くるのは、それがいずれ引き出すお金だからです。任意の pv は、開始時点ですでに口座に ある一括金額(これも負——払い込んだお金です)です。pmt0 にすれば、FV は単一 金額の純粋な複利成長になります。

PV — 将来の流れが今いくらの価値か

=PV(rate, nper, pmt, [fv], [type]) は時計を逆に回します:支払いの流れや将来の一括 金額が与えられたとき、それはいくらの価値か? これが債券価格、リース評価、そして 「一括で受け取るか年金か?」という判断の裏にあるエンジンです。

=PV(5%/12, 20*12, -1000)       ' 年5%で月$1,000の年金を20年 -> 151525.31
=PV(5%, 10, 0, -10000)         ' 10年後に受け取る$10,000ひとつ、年5% -> 6139.13

読み方:月$1,000を20年という約束は、5%の割引率で今日およそ$151,525の価値です—— 支払いの総額$240,000よりかなり少ない。後で受け取るお金は、今のお金より価値が低い からです。この差こそ貨幣の時間価値であり、PV はそれを値付けする方法です。

符号の規約がすべてを決める

FVPVPMT からそのままルールを受け継ぎます:**出ていくお金は負、入って くるお金は正。**間違えても Excel は警告しません——ただ、こっそり意味をなさない符号の 数字を返すだけです。

=FV(6%/12, 10*12, -500)        ' pmt が負(お金を入れる) -> +81939.67  (正しい)
=FV(6%/12, 10*12, 500)         ' pmt が正 -> -81939.67  (Excel は引き出しと解釈)

FVPV が、正のはずなのに負で返ってきたら(逆も同様)、ABS に手を伸ばさず—— 符号を確認してください。積立の払い込みと、それが生む残高は、符号が逆でなければ なりません。一方は入っていくお金、もう一方は引き出せるお金だからです。同じ関係式で 両方が同じ符号なら、モデルは何かが矛盾していると告げています。

type 引数:支払いはいつ起きる?

任意の type 引数は、各支払いがその期の期末に着地するか(既定、通常年金)、 期首に着地するか(期首払い年金)を決めます:

=FV(6%/12, 10*12, -500, 0, 0)  ' 期末の払い込み(既定) -> 81939.67
=FV(6%/12, 10*12, -500, 0, 1)  ' 期首の払い込み -> 82349.37

期首払いは1期分多く利息を稼ぐので、FV は少し大きくなり、PV も少し大きくなります。 前払いするもの——家賃、リース、保険料——では効いてきて、その場合 type1 に すべきです。通常のローンや大半の積立では、既定の 0 が正解です。

RATE と NPER — 残り2つの未知数

同じ方程式は、利率や期間数が欠けているとき、それらについても解きます。

RATE(nper, pmt, pv, [fv], [type], [guess]) は1期あたりの利率を求めます。これは 反復計算です——Excel が推測して精緻化します——ので、収束できないと #NUM! を返す ことがあります。guess(例:10%)を与えると助けになります。年率換算を忘れずに:

=RATE(5*12, -200, 10000)*12    ' $10,000のローンを月$200・5年にする年利は? -> 約7.4%
=RATE(10, 0, -1000, 2000)      ' $1,000を10年で2倍にする利率は? -> 1期あたり約7.18%

NPER(rate, pmt, pv, [fv], [type]) は何期かかるかを求めます:

=NPER(6%/12, -500, 0, 100000)  ' 年6%で月$500、$100,000に届くのに何か月? -> 約139か月
=NPER(18%/12, -100, 2000)      ' 年18%の$2,000を月$100で返すのにどれくらい? -> 約24か月

どちらも FVPVPMT とまったく同じく符号の規約に従います。RATE#NUM! を 返すなら、原因はたいてい、解を許さない符号——少なくとも1つの入金と1つの出金が要ります ——か、guess が大きく外れていることです。

ExcelMaster の使いどころ

FVPV の難所は、関数名ではめったにありません。5つの変数とその符号を取り違えない こと、そして自分が何を解いているのかを覚えておくことです。ExcelMaster に「年6%で 15年後に$100,000を持つには毎月いくら積み立てればいい?」と伝えれば、正しい関数(ここ では支払いが未知数なので PMT)を選び、答えが正になるよう符号を設定し、利率を期間に 合わせます。#NUM! を返す RATE を渡せば、キャッシュフローが実際に符号を変えるかを 確認し、妥当な guess を加えます。

よくある質問

Excel の FV と PV の違いは?

FV(将来価値)は、お金が後でいくらの価値になるか——積立プランの最終残高や、 成長する一括金額——を教えます。PV(現在価値)は、将来の金額や支払いの流れが今日 いくらの価値かを教えます。両者は同じ貨幣の時間価値の方程式の2つの向きです:FV は 前へ複利し、PV は後ろへ割り引きます。

FV が負の数を返すのはなぜ?

符号の規約のためです。支払いをの数で入力すると、Excel はそれをお金を引き出して いると読むので、将来価値は負で返ってきます。払い込みは-500)で入力すれば、 FV は正の残高を返します。入るお金と出るお金は、符号が逆でなければなりません。

FV で複利を計算するには?

支払いなしで FV を使います:=FV(rate, nper, 0, -principal)。たとえば =FV(6%/12, 10*12, 0, -10000)$10,000 を年6%・月複利で10年成長させ、約 18193.97 を返します。利率と期間を複利の頻度に合わせます——月複利なら年利を12で 割ります。

FV と PV の type 引数は何をする?

type は各支払いがいつ起きるかを設定します:0(既定)は期の期末1期首。 期首払い(前払いの家賃やリースに使う期首払い年金)は1期分多く利息を稼ぐので、FVPV も少し高くなります。

RATE や NPER はいつ使う?

利率が未知のとき(「この取引はどんな利回りを意味する?」)は RATE、期間数が未知の とき(「完済まで/目標到達までどれくらい?」)は NPER を使います。これらは FVPVPMT と同じ方程式を、別の変数について解くだけです——5の法則です。

検証環境

検証環境: Excel 365(Windows 11)— 最終確認 2026-07-23。

関連ガイド: ExcelのPMT · ExcelのNPV・IRR · 財務三表モデル · ExcelのROUND関数 · ExcelのIFERROR関数