ExcelのFV関数の使い方|積立投資・NISA・iDeCoの将来価値を計算する財務関数
はじめに
「毎月3万円を年利3%で20年積み立てたら、将来いくらになるか」。
この計算、手作業でやろうとすると複利の連鎖で複雑になります。ExcelならFV関数一発で答えが出ます。
=FV(3%/12, 20*12, -30000)
結果は約983万円。この数式の意味と使い方を、この記事で順番に解説します。
引数の指定方法、符号(プラス・マイナス)のルール、単位換算の落とし穴、よくあるエラーの対処まで網羅します。新NISAやiDeCoの積立シミュレーション、教育資金・住宅資金の逆算にもそのまま使えるレベルまで踏み込みます。
この記事を読み終えると、以下の3つができるようになります。
- 自分の積立条件を入れて将来価値を試算できる
- 「結果がマイナス」「想定の10倍」などのつまずきを自力で解決できる
- PV関数・PMT関数など他の財務関数との使い分けが整理できる
ExcelのFV関数とは?将来価値を求めるExcel財務関数
FV(Future Value)の定義と使いどころ
FVはFuture Value(将来価値)の略です。
現在の投資額や毎月の積立額をもとに、一定の利率で運用したとき将来いくらになるかを求めます。
使いどころは主に3つです。
| シーン | 具体例 |
|---|---|
| 毎月積立の最終額 | NISAやiDeCoで毎月○万円を積み立てた場合の満期額 |
| 定期預金の受取額 | 初期資金を○年間預けた場合の元利合計 |
| 初期資金+積立の複合 | 100万円を元手に毎月追加積立した場合の将来価値 |
PV関数(現在価値の計算)と対になる関数です。「将来いくらになるか」を知りたいときはFV、「将来の目標額が今いくらか」を知りたいときはPVを使います。
FV関数はExcel・Googleスプレッドシートで利用可能
FV関数はExcel全バージョンで利用できます。GoogleスプレッドシートのFV関数も構文・動作はExcelと同一です。本記事の数式はそのまま両方で使えます。
利率が年ごとに変動する場合はFVSCHEDULE関数(変動利率版)を使います。FV関数は一定利率のみを扱える点に注意してください。
FV関数の構文と引数の意味
=FV(rate, nper, pmt, [pv], [type])の5引数
=FV(rate, nper, pmt, [pv], [type])
[ ]は省略可能な引数です。
| 引数 | 必須/省略可 | 省略時の既定値 | 意味 |
|---|---|---|---|
| rate | 必須 | — | 1期間あたりの利率 |
| nper | 必須 | — | 総支払回数 |
| pmt | 必須 | — | 毎期の定期支払額(変動不可) |
| pv | 省略可 | 0 | 現在価値(初期投資額) |
| type | 省略可 | 0 | 0=期末払い、1=期首払い |
pmtは省略できません。積立なしで初期資金のみの場合はpmt=0を指定してください。pvを省略すると0(初期資金なし)として計算されます。
月次計算時の単位換算(年利÷12・年数×12)
【重要】rateとnperの単位を必ず揃える
月次で積み立てる場合、rateもnperも月単位で指定します。
– rate:年利÷12
– nper:年数×12
| 積立頻度 | rateの指定 | nperの指定 |
|---|---|---|
| 月次 | 年利÷12 | 年数×12 |
| 四半期 | 年利÷4 | 年数×4 |
| 年次 | 年利(そのまま) | 年数(そのまま) |
月次計算でrateに年利をそのまま入れると、計算結果が実際の数倍に膨らみます。最もよくある入力ミスです。
符号ルールを理解する(FV関数最大のつまずきポイント)
支払い=マイナス、受取=プラスのキャッシュフロー方向
FV関数はキャッシュフローの方向を符号で区別します。
- 支払い(出金)→ マイナス:積立額(pmt)、初期投資額(pv)
- 受取(入金)→ プラス:FV関数の計算結果
「財布からお金が出ていく=マイナス」と覚えてください。
積立投資を例にとると、毎月3万円を積み立てるのは出金です。pmtは-30000と入力します。計算結果のFV(受取額)はプラスで返ります。
この符号ルールは、Excelの財務関数群が裏側で同じ年金方程式を解いているために統一されたルールです。PMT関数やPV関数でも同じ考え方が適用されます。
結果がマイナスになる理由とABS関数での対処
pmtやpvをプラスで入力すると、FV関数の結果がマイナスになります。
これはエラーではなく、符号ルールに基づく正常動作です。ただし「積立後の受取額がマイナス」では直感的にわかりにくいため、ABS関数で絶対値に変換して使うのが一般的です。
=ABS(FV(3%/12, 20*12, 30000))
上記はpmtをプラスで入力したケースをABSで補正した例です。もっとも、最初から-30000と入力する方が意図が明確です。実務では「マイナスで入力」を統一ルールにすると後の集計が楽になります。
実例①:毎月積立だけの将来価値(基本形)
月3万円・年利3%・20年の積立額を求める
条件:毎月30,000円・年利3%・20年間・期末払い
=FV(3%/12, 20*12, -30000, 0, 0)
結果:約9,832,000円
引数の内訳:
| 引数 | 値 | 意味 |
|---|---|---|
| rate | 3%/12 | 月利0.25% |
| nper | 20*12 | 240回(20年×12ヶ月) |
| pmt | -30000 | 毎月30,000円の支払い |
| pv | 0 | 初期投資なし |
| type | 0 | 期末払い(省略も可) |
20年間の積立総額は30,000×240=720万円です。運用益の約263万円が上乗せされた約9,832,000円(約983万円)が将来価値になります。
ちなみに「目標額に達するために毎月いくら積み立てればいいか」を逆算したい場合はPMT関数(毎月返済額・積立額の計算)、「何年で目標に達するか」を逆算したい場合はNPER関数(支払回数の計算)を使います。
実例②:一括投資+毎月積立の複合計算
初期資金100万円+月2万円・年利2%・10年後の価値
まとまった初期資金がある場合は、pvとpmtを両方指定します。
条件:初期資金100万円・毎月20,000円積立・年利2%・10年間
=FV(2%/12, 10*12, -20000, -1000000, 0)
結果:約388万円
pvにも-1000000とマイナスで入力します。「初期資金を口座に預ける=出金」だからです。
積立総額は20,000×120+1,000,000=340万円。運用益の約48万円が加わった値が将来価値です。
退職金や相続資金などまとまった資金を運用に回し、さらに毎月の余剰資金を上乗せするケースで使う計算です。
実例③:期首払い(type=1)と期末払いの違い
iDeCoの積立日設定を例に差額を比較
typeを1にすると、毎月の支払いが期末から期首に変わります。支払いが1ヶ月早まる分、全期間で1期多く複利が回るため、期首払いの方がFVは大きくなります。
条件:月5万円・年利6%(月利0.5%)・12ヶ月
期末払い(type=0): =FV(0.5%, 12, -50000, 0, 0)
結果: 約616,778円
期首払い(type=1): =FV(0.5%, 12, -50000, 0, 1)
結果: 約640,466円
差額は約23,688円です。1年間だとわずかな差ですが、20〜30年単位になると差は顕著に広がります。
30年シミュレーションでの差額(長期)
条件:月3万円・年利5%・30年(360ヶ月)で比較します。
期末払い: =FV(5%/12, 30*12, -30000, 0, 0)
結果: 約24,968,000円
期首払い: =FV(5%/12, 30*12, -30000, 0, 1)
結果: 約25,072,000円
差額は約10万円。長期になるほど積立タイミングの効果が累積します。iDeCoの引落日が月初か月末かで積立タイミングが異なるため、厳密なシミュレーションではtypeも合わせると精度が上がります。
実務では大まかな見積もりであれば期末払い(既定値)で十分です。
実例④:NISAつみたて投資枠の長期シミュレーション
新NISAつみたて投資枠は年間上限120万円(月10万円)、生涯投資枠1,800万円です。年利4%(インデックス投信の歴史的平均値の目安)で30年積み立てた場合を試算します。
月10万円・年利4%・30年(満額活用ケース)
=FV(4%/12, 30*12, -100000, 0, 0)
結果:約69,405,000円
積立元本は10万円×360ヶ月=3,600万円。運用益は約3,340万円。NISA口座であれば運用益約3,340万円はすべて非課税で受け取れます。特定口座だと20.315%課税で約680万円の税金がかかるため、非課税効果が大きく効きます。
月3.3万円・年利4%・30年(生涯投資枠1,800万円ぴったり活用)
生涯投資枠1,800万円を月3.3万円ずつ30年で埋める場合。
=FV(4%/12, 30*12, -33000, 0, 0)
結果:約22,904,000円
無理のない金額で長期投資する一般会社員のリアルなシナリオです。
想定利回りは保守的に
4%はあくまで過去の市場平均からの目安です。実際の運用は変動するため、複数の利率(2%/4%/6%)でシミュレーションして幅で考えると現実的です。
利率を変えて自動でシミュレーション表を作りたい場合は、rate引数の部分をセル参照にしてデータテーブル機能と組み合わせると便利です。
実例⑤:教育資金・住宅資金を逆算する考え方
「将来○○万円必要」が決まっている場合、FV関数を組み合わせて目標逆算ができます。
18年後の大学資金600万円を作る積立額
ゴール額(FV)が決まっている場合はPMT関数で毎月積立額を求めます。
=PMT(3%/12, 18*12, 0, 6000000)
結果:約-20,400円(毎月約2万円の積立)
FVを6,000,000、PVを0で指定し、PMTを求める形です。FV関数の年金方程式の「求める変数」を変えるだけで逆算できます。
10年後の住宅頭金500万円を作る積立額
=PMT(2%/12, 10*12, 0, 5000000)
結果:約-37,700円(毎月約3.8万円の積立)
「ボーナスからまとまった額も入れたい」場合は、別途FV関数で「ボーナス月の積立分だけの将来価値」を計算して、毎月積立のFVと足し合わせます。
毎月積立分: =FV(2%/12, 10*12, -25000, 0, 0)
ボーナス分(年2回・10万円): =FV(2%, 10, -200000, 0, 0)
合計: 上記2式の合計
ボーナス積立は「年に2回まとまった額」として、rateを年利、nperを年数で計算します。
FV関数を使うときの注意点(インフレ・税金・利回りの現実性)
注意点①:FV関数は名目利率で計算する
FV関数は入力した利率をそのまま使うため、結果は名目価値です。インフレを考慮した実質価値ではありません。
実質利回り ≈ 名目利率 − インフレ率
たとえば名目4%でもインフレ2%が続けば、実質的な購買力は約2%でしか増えていません。長期シミュレーションでは「名目利回り3%・インフレ2%」と「名目利回り3%・インフレ0%」を両方試算して、現実的な購買力で評価しましょう。
名目: =FV(4%/12, 30*12, -30000)
実質(インフレ2%差し引き): =FV(2%/12, 30*12, -30000)
注意点②:税金は計算外(NISA・iDeCoは別枠)
FV関数は税引前の将来価値を返します。通常の特定口座では運用益に20.315%課税されるため、税引後を知りたい場合は次のように調整します。
税引後 ≈ 元本 + (FV結果 - 元本) * (1 - 0.20315)
新NISAは運用益非課税、iDeCoも運用中は非課税です。iDeCoは受取時に退職所得控除・公的年金等控除を活用できます。
注意点③:手数料・信託報酬は含まれない
投信の信託報酬(年0.1〜2%程度)や購入時手数料はFV関数の計算に含まれていません。実効利回りを求める場合は「想定利回り − 信託報酬」で計算するのが現実的です。
信託報酬0.2%の場合: =FV((4%-0.2%)/12, 30*12, -30000)
注意点④:利率が変動する場合はFVSCHEDULE関数
FV関数は一定利率のみを扱えます。年ごとに想定利率が変わるシナリオを計算したい場合はFVSCHEDULE関数(変動利率版)を使います。たとえば5年目までは年4%、それ以降は年2%といったシナリオが想定されます。
PV関数・PMT関数・NPER関数との使い分け
FV↔PV:逆演算の関係(知りたいものが違う)
FV・PV・PMT・NPER・RATEの5関数は、すべて同一の年金方程式を解きます。「4つがわかれば残り1つが求まる」関係です。
| 知りたいこと | 使う関数 |
|---|---|
| 将来いくらになるか | FV関数 ← 本記事 |
| 今いくら投資すればよいか | PV関数(現在価値の計算) |
| 毎月いくら積み立てるか | PMT関数(毎月返済額の計算) |
| 何ヶ月で目標に達するか | NPER関数(積立期間の逆算) |
| 何%の利率が必要か | RATE関数(利率の逆算) |
FVとPVは逆演算の関係です。
- FV:「毎月3万円を年利3%で20年積み立てたら将来いくらか」
- PV:「20年後に983万円受け取るには今いくら必要か」
同じ方程式の「求める変数」が違うだけです。
財務関数シリーズ全体マップ
| 関数 | 用途 |
|---|---|
| PV関数 | 現在価値(今いくらか) |
| FV関数 | 将来価値(将来いくらか)← 本記事 |
| PMT関数 | 定期支払額(毎期いくら払うか) |
| NPER関数 | 支払回数(何回払うか) |
| RATE関数 | 利率(何%必要か) |
| IPMT関数 | 各期の利息部分 |
| PPMT関数 | 各期の元金部分 |
| CUMIPMT関数 | 累計利息 |
| CUMPRINC関数 | 累計元金 |
| FVSCHEDULE関数 | 変動利率版の将来価値 |
積立投資のシミュレーションはFV、ローン返済のシミュレーションはPMT+IPMT+PPMTの組み合わせ、というイメージで使い分けます。
よくあるエラーと対処法
#VALUE!エラー(引数の型ミス)
原因:引数に文字列やセル参照先のテキストが含まれている
対処:rate・nper・pmtはすべて数値でなければなりません。セルの書式が「文字列」になっていると数値として認識されないため、書式を「数値」に変更してから再入力してください。
結果がマイナスになる(符号ルールの見落とし)
原因:pmtまたはpvをプラスで入力している
これはエラーではなく正常動作です。「支払い=マイナス」のルールに従い、pmtとpvを負の数で入力すれば、FVはプラス(受取額)で返ります。プラスで入力したい場合は=ABS(FV(...))で絶対値に変換してください。
結果が想定より大きい(rateの単位ミス)
原因:月次計算でrateに年利をそのまま入力している
NG: =FV(3%, 240, -30000)
OK: =FV(3%/12, 240, -30000)
rateを年利のまま月次計算に使うと、実際の約12倍の利率で計算されます。結果が想定より大幅に大きい場合はまずここを確認してください。
結果が想定より小さい(nperの単位ミス)
原因:月次計算でnperに年数をそのまま入力している
NG: =FV(3%/12, 20, -30000)
OK: =FV(3%/12, 20*12, -30000)
nperが年単位のままだと積立期間が極端に短くなります。結果が想定より大幅に小さい場合はnperの単位を確認してください。
#NUM!エラー(極端な引数値)
原因:rateやnperが極端に大きい・小さい、または不整合
対処:利率は通常0〜0.2(年利20%)程度の範囲、nperは正の整数。マイナスのnperや0/0が発生する設定になっていないか確認してください。
FAQ:FV関数のよくある疑問
Q1. ボーナス時に追加積立する場合、どう計算しますか?
A. FV関数は「毎期一定額」しか扱えないため、ボーナス分は別途FV関数で計算して足し合わせます。たとえば毎月2万円+年2回10万円のボーナス積立は次のように計算します。
毎月分: =FV(3%/12, 20*12, -20000)
ボーナス分(年2回・年利3%・20年): =FV(3%, 20, -200000)
合計: 上記の合計
ボーナス積立は「年単位の積立」として、rate=年利、nper=年数で計算するのがポイントです。
Q2. 途中で積立額を変更した場合は計算できますか?
A. FV関数だけでは扱えません。期ごとに金額が変わる場合は、各期のFVを段階的に計算して累積する形になります。簡易には「変更前の期間」と「変更後の期間」をそれぞれFV関数で計算し、変更前のFVを変更後のpvとして渡す方法が使えます。
変更前: =FV(3%/12, 5*12, -20000) // 結果A
変更後: =FV(3%/12, 15*12, -30000, -A)
Q3. 利率が変動する商品の場合は?
A. 年ごとに利率が変わる場合はFVSCHEDULE関数を使います。=FVSCHEDULE(元本, {0.03,0.04,0.05,0.02,...})のように利率の配列を渡します。
Q4. 税金は引かれた金額が出ますか?
A. 出ません。FV関数は税引前の将来価値を返します。特定口座での税引後を計算する場合は次のようにします。
税引後 ≈ 元本 + (FV結果 - 元本) * (1 - 0.20315)
新NISAやiDeCoの運用中は非課税のため、FV結果をそのまま受取額として扱えます。
Q5. インフレを考慮した実質価値を計算したい
A. 名目利率からインフレ率を引いた「実質利率」でFV関数を計算します。
名目4%・インフレ2%の実質価値: =FV((4%-2%)/12, 30*12, -30000)
実質利率で計算すると、将来の購買力ベースでの価値が出ます。
Q6. PV関数とFV関数はどう使い分けますか?
A. 「将来いくら?」がFV、「今いくら?」がPVです。
- 「毎月3万円を20年積み立てたら将来いくらか」→ FV
- 「20年後に1,000万円必要。今いくら投資すればいいか」→ PV
同じ年金方程式の「求める変数」が違うだけで、構文もそっくりです。詳細はPV関数の記事を参考にしてください。
Q7. 期首払い・期末払いはどちらを選ぶべきですか?
A. 厳密性が求められない試算なら期末払い(既定値)で十分です。iDeCoのように引落日が月初の商品で、長期かつ精度を高めたい場合のみtype=1を使います。差額は1年スパンでは数百〜数千円程度です。
Q8. 結果が「¥」付きで表示されません
A. FV関数自体は数値を返すだけです。「¥」表示にしたい場合は、結果セルの書式設定で「通貨」を選択してください。Ctrl+1で書式設定ダイアログを開き、「通貨」「¥」を指定すれば自動で「¥1,000,000」のように表示されます。
Q9. 初期費用や手数料は計算に含められますか?
A. pvに初期費用を含めて入力する方法があります。たとえば初期投資100万円+購入時手数料1%なら、pvに-1,010,000を入れます。信託報酬のような継続コストは利率から差し引いて計算します((4%-0.2%)/12のように)。
Q10. NISA枠を超える積立をする場合の試算は?
A. NISA枠内(運用益非課税)と特定口座(20.315%課税)を分けて2つのFV関数で試算し、合計します。NISA枠の月10万円を超える部分は特定口座扱いになるため、税引後を別途計算してください。
NISA枠分: =FV(4%/12, 30*12, -100000)
特定口座分: 元本 + (FV結果 - 元本) * (1 - 0.20315)
まとめ
FV関数の要点を3つにまとめます。
1. 5引数の役割を正確に把握する
=FV(rate, nper, pmt, [pv], [type])
必須はrate・nper・pmtの3つです。pvは初期資金がある場合に追加します。typeを省略すると期末払い(0)になります。
2. 符号ルールを守る
支払い(出金)はマイナスで入力します。pmtとpvを負の数で指定すれば、FVはプラス(受取額)で返ります。結果がマイナスになったらABS関数で対処できます。
3. 月次計算では単位を揃える
年利÷12、年数×12を忘れると計算結果が大きくずれます。rateとnperは必ず同じ期間単位で揃えてください。
FV関数を使いこなせば、NISA・iDeCo・教育資金・住宅資金など、人生の節目で必要なお金の試算が自分でできるようになります。インフレ・税金・手数料といった現実の要素も組み込んで、より精度の高いシミュレーションを試してみてください。
関連する財務関数
- PV関数(現在価値の計算):FVの逆演算。将来の目標額から現在の必要投資額を求める
- PMT関数(毎月返済額・積立額の計算):目標額を達成するための毎月の積立額を求める
- NPER関数(積立期間の逆算):目標額に達するまでの期間を求める
- RATE関数(利率の逆算):目標達成に必要な利率を求める
- IPMT関数(各期利息):ローン返済の各期利息を求める
- PPMT関数(各期元金):ローン返済の各期元金を求める
- CUMIPMT関数(累計利息):指定期間の累計利息を一括計算
- CUMPRINC関数(累計元金):指定期間の累計元金を一括計算
- FVSCHEDULE関数(変動利率版):年ごとに利率が変わるケースの将来価値計算
- GoogleスプレッドシートのFV関数:構文はExcelと同一。Sheets版の詳細はこちら
