Financial.PPmt(Double, Double, Double, Double, Double, DueDate) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un valor que especifica el pago de la entidad de seguridad durante un período determinado de una anualidad basada en pagos fijos periódicos y una tasa de interés fija.
public static double PPmt(double Rate, double Per, double NPer, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod);
static member PPmt : double * double * double * double * double * Microsoft.VisualBasic.DueDate -> double
Public Function PPmt (Rate As Double, Per As Double, NPer As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod) As Double
Parámetros
- Rate
- Double
Required. Tasa de interés por período. Por ejemplo, si obtiene un préstamo para un automóvil con una tasa porcentual anual (APR) del 10 por ciento y realiza pagos mensuales, la tasa por período es 0,1/12 o 0,0083.
- Per
- Double
Required. Período de pago comprendido entre 1 y NPer.
- NPer
- Double
Required. Número total de períodos de pago en la anualidad. Por ejemplo, si realiza pagos mensuales en un préstamo de auto de cuatro años, su préstamo tiene un total de 4 x 12 (o 48) períodos de pago.
- PV
- Double
Required. Valor actual de una serie de pagos o recibos futuros. Por ejemplo, cuando pide prestado dinero para comprar un coche, el importe del préstamo es el valor actual para el prestamista de los pagos mensuales que realizará.
- FV
- Double
Optional. Valor futuro o saldo en efectivo que desea después de haber realizado el pago final. Por ejemplo, el valor futuro de un préstamo es \$0 porque es su valor después del pago final. Sin embargo, si desea ahorrar \$50.000 a lo largo de 18 años para la educación de su hijo, \$50.000 es el valor futuro. Si se omite, se supone que es 0.
- Due
- DueDate
Optional. Objeto de tipo DueDate que especifica cuándo se vencen los pagos. Este argumento debe ser DueDate.EndOfPeriod si los pagos se vencen al final del período de pago, o DueDate.BegOfPeriod si los pagos se vencen al principio del período. Si se omite, DueDate.EndOfPeriod se supone.
Devoluciones
El pago del capital durante un período determinado de una anualidad basada en pagos fijos periódicos y un tipo de interés fijo.
Excepciones
Per
<=0 o Per>NPer.
Ejemplos
En este ejemplo se usa la PPmt función para calcular la cantidad de un pago durante un período específico de entidad de seguridad cuando todos los pagos son de igual valor. Dado son la tasa porcentual de interés por período (APR / 12), el período de pago para el cual se desea la parte principal (Period), el número total de pagos (TotPmts), el valor actual o capital del préstamo (PVal), el valor futuro del préstamo (FVal) y un número que indica si el pago vence al principio o al final del período de pago (PayType).
Sub TestPPMT()
Dim PVal, APR, TotPmts, Payment, Period, P, I As Double
Dim PayType As DueDate
Dim Msg As String
Dim Response As MsgBoxResult
' Define money format.
Dim Fmt As String = "###,###,##0.00"
' 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?"))
' Ensure proper form.
If APR > 1 Then APR = APR / 100
TotPmts = CDbl(InputBox("How many monthly payments do you have to make?"))
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
Payment = Math.Abs(-Pmt(APR / 12, TotPmts, PVal, FVal, PayType))
Msg = "Your monthly payment is " & Format(Payment, Fmt) & ". "
Msg = Msg & "Would you like a breakdown of your principal and "
Msg = Msg & "interest per period?"
' See if chart is desired.
Response = MsgBox(Msg, MsgBoxStyle.YesNo)
If Response <> MsgBoxResult.No Then
If TotPmts > 12 Then MsgBox("Only first year will be shown.")
Msg = "Month Payment Principal Interest" & Environment.NewLine
For Period = 1 To TotPmts
' Show only first 12.
If Period > 12 Then Exit For
P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType)
' Round principal.
P = (Int((P + 0.005) * 100) / 100)
I = Payment - P
' Round interest.
I = (Int((I + 0.005) * 100) / 100)
Msg = Msg & Period & vbTab & Format(Payment, Fmt)
Msg = Msg & vbTab & Format(P, Fmt) & vbTab & Format(I, Fmt) & Environment.NewLine
Next Period
' Display amortization table.
MsgBox(Msg)
End If
End Sub
Comentarios
Una anualidad es una serie de pagos fijos en efectivo efectuados durante un período de tiempo. Una anualidad puede ser un préstamo (como una hipoteca de vivienda) o una inversión (como un plan de ahorro mensual).
Los Rate argumentos y NPer deben calcularse utilizando períodos de pago expresados en las mismas unidades. Por ejemplo, si Rate se calcula con meses, NPer también debe calcularse con meses.
Para todos los argumentos, el efectivo pagado (como los depósitos a los ahorros) se representa mediante números negativos; efectivo recibido (como cheques de dividendos) se representa mediante números positivos.