Contenido
Sub CalcularInteresAcumuladoAlVencimiento()
Dim issueDate As Date
Dim settlementDate As Date
Dim annualRate As Double
Dim parValue As Double
Dim basis As Integer
Dim accruedInterest As Double
' Establece los parámetros
issueDate = DateSerial(2020, 1, 1) ' 1 de enero de 2020
settlementDate = DateSerial(2023, 1, 1) ' 1 de enero de 2023
annualRate = 0.05 ' 5% tasa de interés anual
parValue = 1000 ' Valor nominal de 1000
basis = 0 ' Base 30/360
' Utiliza la función WorksheetFunction.AccrIntM para calcular el interés acumulado
On Error Resume Next ' Para manejar errores si ocurren
accruedInterest = Application.WorksheetFunction.AccrIntM(issueDate, settlementDate, annualRate, parValue, basis)
' Verificar si ocurrió un error
If Err.Number <> 0 Then
MsgBox "Ha ocurrido un error al calcular el interés acumulado."
Err.Clear
Else
MsgBox "El interés acumulado al vencimiento es: " & accruedInterest
End If
End Sub
Este código define una subrutina llamada CalcularInteresAcumuladoAlVencimiento, la cual inicializa una serie de variables, asigna valores a esos parámetros, y luego llama a Application.WorksheetFunction.AccrIntM para calcular el interés acumulado. Después del cálculo, verifica si hubo algún error durante la llamada a la función y muestra los resultados en un mensaje.