Contenido
La función `Pmt` en VBA (Visual Basic for Applications) se utiliza para calcular un pago periódico para un préstamo o anualidad basándose en pagos y tasas de interés constantes. Aquí te muestro cómo usarla:
Sintaxis
Pmt(rate, nper, pv, [fv], [type])
- `rate` es la tasa de interés por período.
- `nper` es el número total de períodos de pago en la anualidad.
- `pv` es el valor presente, o la cantidad total que una serie de pagos futuros vale ahora; también conocido como el principal.
- `fv` (opcional) es el valor futuro, o un saldo en efectivo que deseas lograr después del último pago. Si se omite, se asume que es 0 (cero), lo que significa que el préstamo se paga completamente al final del término.
- `type` (opcional) es el número 0 (cero) o 1 e indica cuándo vencen los pagos.
- `0` o no incluido: Los pagos vencen al final del período.
- `1`: Los pagos vencen al inicio del período.
Ejemplo de Uso
Supongamos que tienes un préstamo de $10,000 a una tasa de interés anual del 5% y quieres calcular el pago mensual para pagar el préstamo en 3 años (36 períodos).
Sub CalculateLoanPayment()
Dim InterestRate As Double
Dim LoanTerm As Integer
Dim LoanAmount As Double
Dim MonthlyPayment As Double
' Configurar los valores
InterestRate = 0.05 / 12 ' Tasa de interés mensual (5% anual dividido por 12 meses)
LoanTerm = 36 ' Número de pagos mensuales (3 años)
LoanAmount = 10000 ' Monto del préstamo
' Calcular el pago mensual
MonthlyPayment = Pmt(InterestRate, LoanTerm, -LoanAmount)
' Mostrar el resultado
MsgBox "El pago mensual es: " & Format(MonthlyPayment, "Currency")
End Sub
Notas Importantes
- Signo del ‘pv’ (valor presente/principal): Se debe usar un valor negativo para `pv` si estás recibiendo ese monto de dinero como un préstamo (lo cual es típico al calcular pagos de préstamos). Esto se debe a que desde la perspectiva de quien presta el dinero, el préstamo es un desembolso (negativo), mientras que los pagos que obtienen de vuelta son positivos.
- Formato de la moneda: La función `Pmt` devuelve un valor numérico de tipo `Double`. Puede ser útil formatear la salida como moneda antes de mostrarla al usuario, como se muestra en el ejemplo con `Format(MonthlyPayment, «Currency»)`.
Siempre asegúrate de ingresar la tasa y el número de períodos en los términos correctos (es decir, si los pagos son mensuales, la tasa debe ser mensual y el número de períodos debe ser el número total de meses).
La función `Pmt` es muy útil para modelar hipotecas, préstamos para automóviles y cualquier otro tipo de préstamo a plazos fijos.