VBAのPmt関数について解説しています。
Pmt関数は、VBA関数の中で財務関数に分類される関数です。
Pmt関数は、倍精度浮動小数点数型 (Double) の値を返します。定額の支払いを定期的に行い、利率が一定であると仮定して、投資に必要な定期支払額を返します。
構文 | Pmt(rate, nper, pv[, fv[, type]]) | |
---|---|---|
引数 | 省略 | 説明 |
rate | × | 投資期間を通じて一定の利率を示す倍精度浮動小数点数型 (Double) の値を指定します。たとえば、年率 (APR) 10% の車のローンを月払いで返済する場合、各期間の利率は 0.1/12 または 0.0083 になります。 |
nper | × | 投資期間全体での支払い回数の合計を示す整数型 (Integer) の値を指定します。たとえば、4 年の車のローンを月払いで返済する場合、支払い回数は 48 回 (12 回×4 年) になります。 |
pv | × | 現在の投資額または将来行われる一連の支払いを、現時点で一括支払いした場合の合計金額を示す倍精度浮動小数点数型 (Double) の値を指定します。たとえば、車を購入するために資金を借りる場合、毎月支払うローンの総額が名前付き引数 pv になります。 |
fv | ● | 投資の将来価値、または最後の支払いを行った後に残る現金の収支を示すバリアント型 (Variant) の値を指定します。ローンなどの借入の将来価値は 0 になります。また、子供の教育費用として 18 年間で 500,000 円貯蓄する場合は、将来価値が 500,000 円になります。名前付き引数 fv を省略すると、0 を指定したものとみなされます。 |
type | ● | 支払期日をバリアント型 (Variant) で指定します。各期の期末に支払う場合は 0、各期の期首に支払う場合は 1 を指定します。名前付き引数 type を省略すると、0 を指定したものとみなされます。 |
投資とは、一連の定額の支払いを一定の期間行うことです。たとえば、住宅ローンなどのローンまたは毎月の貯蓄プランなどの出資を指します。
名前付き引数 rate および nper は、時間的に同じ単位で指定する必要があります。たとえば、名前付き引数 rate を月単位で指定した場合は、名前付き引数 nper も月単位で指定します。
出金 (定額預金の支払いなど) を表す引数には負の値を指定し、入金 (配当金など) を表す引数には正の値を指定します。
投資とは、一連の定額の支払いを一定の期間行うことです。たとえば、住宅ローンなどのローンまたは毎月の貯蓄プランなどの出資を指します。名前付き引数 rate および nper は、時間的に同じ単位で指定する必要があります。たとえば、名前付き引数 rate を月単位で指定した場合は、名前付き引数 nper も月単位で指定します。出金 (定額預金の支払いなど) を表す引数には負の値を指定し、入金 (配当金など) を表す引数には正の値を指定します。
Sub sample()
Dim Fmt, FVal, PVal, APR, TotPmts, PayType, Payment
Const ENDPERIOD = 0, BEGINPERIOD = 1 ' 支払い期日を指定します。
Fmt = "###,###,##0.00" ' 金額の形式を定義します。
FVal = 0 ' 通常、ローンの場合は 0 を指定します。
PVal = InputBox("借入金額を入力してください。")
APR = InputBox("ローンの年利率を入力してください。")
If APR > 1 Then APR = APR / 100 ' 正しい形式に変換します。
TotPmts = InputBox("支払い回数を入力してください。")
PayType = MsgBox("毎月末に支払いを行いますか?", vbYesNo)
If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD
Payment = Pmt(APR / 12, TotPmts, -PVal, FVal, PayType)
MsgBox "毎月の支払い額は " & Format(Payment, Fmt) & " です。"
End Sub
※ドラッグ(スワイプ)すると全体を確認できます。
関数名 | 内容 |
---|---|
DDB | 倍率法による指定した期間の資産原価償却額を算出します。 |
FV | 定額定利の定期支払いでの投資の将来価値を算出します。 |
IPmt | 定額定利の定期支払いで投資期間内の指定した期における金利を算出します。 |
IRR | 指定したキャッシュフローに対する内部利率を算出します。 |
MIRR | 指定したキャッシュフローに対する修正内部利率を算出します。 |
NPer | 定額定利の定期支払いで総額の支払いに必要な支払回数を算出します。 |
NPV | 投資の正味現在価値を算出します。 |
Pmt | 定額定利の定期支払いでの投資の将来価値を算出します。投資に必要な定期支払額を算出します。 |
PPmt | 定額定利の定期支払いでの特定の期間における元金を算出します。 |
PV | 定額定利の定期支払いでの投資の現在価値を算出します。 |
Rate | 定額定利の定期支払いで将来価値を得るための利率を算出します。 |
SLN | 定額法での減価償却費を算出します。 |
SYD | 定額逓減法で指定した期の減価償却費を算出します。 |
↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。
VBAのIE操作入門↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。
こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。