Financial.NPer(Double, Double, Double, Double, DueDate) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
定期的な定額の支払いおよび一定した利率に基づいて、投資に必要な期間を指定する値を返します。
public static double NPer (double Rate, double Pmt, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod);
static member NPer : double * double * double * double * Microsoft.VisualBasic.DueDate -> double
Public Function NPer (Rate As Double, Pmt As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod) As Double
パラメーター
- Rate
- Double
必須です。 投資期間を通じての一定の利率です。 たとえば、10% の年率 (APR) で自動車ローンを利用する際、毎月の支払いを指定した場合の月々の利率は 0.1/12 (0.0083) になります。
- Pmt
- Double
必須です。 毎回の支払い額です。 通常、支払い額には元金と利息が含まれます。支払い額を投資期間内に変更することはできません。
- PV
- Double
必須です。 現在の投資額、つまり将来行われる一連の支払いや受け取りを現時点で一括した場合の合計金額です。 たとえば、自動車を購入するために資金を借り入れた場合、ローン金額は、毎月の返済の対象となる貸手にとっての現在価値を表します。
- FV
- Double
省略可能。 投資の将来価値、つまり最後の支払いを行った後に残る現金の収支です。 たとえば、ローンの将来価値は 0 です。最終支払い後の価値であるためです。 ただし、子供の教育費のため、18 年間かけて 50 万円を貯金する場合、この 50 万円は将来価値になります。 省略した場合は、0 と見なされます。
- Due
- DueDate
省略可能。 支払い期日を示すオブジェクト型 DueDate の値。 各期の期末に支払う場合は DueDate.EndOfPeriod
を、各期の期首に支払う場合は DueDate.BegOfPeriod
をそれぞれ引数に指定します。 省略した場合は、DueDate.EndOfPeriod
と想定されます。
戻り値
定期的な定額の支払いおよび一定した利率に基づいた、投資に必要な期間です。
例外
Rate
= 0 かつ Pmt
= 0 です。
例
この例では、 関数を NPer
使用して、 に値が含まれている PVal
ローンを返済するために支払いを行う必要がある期間の数を返します。 また、期間ごとの利率 ()、支払い (APR / 12
Payment
)、ローンの将来価値 (FVal
)、支払い期間のPayType
開始時または終了時の支払期日 () を示す数値も指定されます。
Sub TestNPer()
Dim TotPmts As Double
Dim PVal, APR, Payment As Double
Dim PayType As DueDate
Dim Response As MsgBoxResult
' Usually 0 for a loan.
Dim Fval As Double = 0
PVal = CDbl(InputBox("How much do you want to borrow?"))
APR = CDbl(InputBox("What is the annual percentage rate of your loan?"))
' Usually 0 for a loan.
If APR > 1 Then APR = APR / 100
Payment = CDbl(InputBox("How much do you want to pay each month?"))
Response = MsgBox("Do you make payments at the end of month?", MsgBoxStyle.YesNo)
If Response = MsgBoxResult.No Then
PayType = DueDate.BegOfPeriod
Else
PayType = DueDate.EndOfPeriod
End If
TotPmts = NPer(APR / 12, -Payment, PVal, FVal, PayType)
If Int(TotPmts) <> TotPmts Then TotPmts = Int(TotPmts) + 1
MsgBox("It will take you " & TotPmts & " months to pay off your loan.")
End Sub
注釈
年金とは、一定期間にわたって行われた一連の固定現金支払いです。 年金は、ローン (住宅ローンなど) または投資 (毎月の節約プランなど) です。
すべての引数について、支払われた現金 (節約金への預金など) は負の数で表されます。受け取った現金 (配当チェックなど) は正の数値で表されます。
適用対象
こちらもご覧ください
.NET