NPer (Función)

Actualización: noviembre 2007

Devuelve un valor de tipo Double que indica el número de períodos de una anualidad para pagos fijos periódicos con un tipo de interés fijo.

Function NPer( _
   ByVal Rate As Double, _
   ByVal Pmt As Double, _
   ByVal PV As Double, _
   Optional ByVal FV As Double = 0, _
   Optional ByVal Due As DueDate = DueDate.EndOfPeriod _
) As Double

Parámetros

  • Rate
    Requerido. Double que indica el tipo de interés por período. Por ejemplo, si obtiene un crédito para comprar un automóvil a una tasa porcentual anual (TAE) del 10 por ciento, y realiza pagos mensuales, el tipo por período será 0,1/12 ó 0,0083.

  • Pmt
    Requerido. Valor de tipo Double que indica el pago que se va a realizar cada período. Normalmente, los pagos contienen un capital principal y un interés que no varía a lo largo de la duración de la anualidad.

  • PV
    Requerido. Valor de tipo Double que indica el valor actual, o valor a día de hoy, de una serie de pagos o cobros futuros. Por ejemplo, en el momento de obtener un crédito para comprar un automóvil, el importe del mismo es el valor actual para el prestamista de los pagos mensuales que se realizarán.

  • FV
    Opcional. Double especifica el valor futuro o el saldo en efectivo que se desea tener una vez realizado el pago final. Por ejemplo, el valor futuro de un crédito es 0 $, puesto que ése es su valor después del pago final. Sin embargo, si desea ahorrar 50.000 dólares durante 18 años para la educación de su hijo, el valor futuro será 50.000 dólares. Si se omite, se supone que es 0.

  • Due
    Opcional. Objeto de tipo DueDate (Enumeración) que indica cuándo vencen los pagos. Este argumento debe ser DueDate.EndOfPeriod si los pagos vencen al final del período o DueDate.BegOfPeriod si los pagos vencen al principio del mismo. Si se omite, se supone que es DueDate.EndOfPeriod.

Excepciones

Tipo de excepción

Número de error

Condición

ArgumentException

Rate

ArgumentException

Rate = 0 y Pmt = 0

Consulte la columna "Número de error" si está actualizando aplicaciones de Visual Basic 6.0 que utilizan el control de errores no estructurado. (Se puede comparar el número de error con respecto a Number (Propiedad, objeto Err)). Sin embargo, siempre que sea posible, se debe considerar la sustitución de dicho control de errores por Información general sobre el control estructurado de excepciones de Visual Basic.

Comentarios

Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un período de tiempo. Puede ser un préstamo (como la hipoteca de un inmueble, por ejemplo) o una inversión (como un plan de ahorro mensual).

Para todos los argumentos, el efectivo abonado (como depósitos de ahorro) se representa con números negativos; y el recibido (como cheques de dividendos), con números positivos.

Ejemplo

En este ejemplo se utiliza la función NPer para devolver el número de períodos durante los cuales se deben realizar pagos para amortizar un préstamo cuyo valor se incluye en PVal. También se proporcionan el tipo de interés porcentual por período (APR / 12), el pago (Payment), 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 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

Requisitos

Espacio de nombres:Microsoft.VisualBasic

**Módulo:**Financial

**Ensamblado:**Visual Basic Runtime Library (en Microsoft.VisualBasic.dll)

Vea también

Referencia

Resumen financiero

ArgumentException