¿Cómo usar la función WorksheetFunction.AccrIntM en VBA?

La función `WorksheetFunction.AccrIntM` en VBA de Excel es una función financiera que calcula el interés acumulado en un valor a su vencimiento. Se utiliza principalmente para bonos y otros valores de deuda que pagan intereses al final del período de inversión.

Aquí tienes los parámetros que `AccrIntM` espera:

  • issue: La fecha de emisión del título.
  • settlement: La fecha de liquidación del título (la fecha en la que se vence el título y se paga el capital).
  • rate: La tasa de interés anual del título.
  • par: El valor nominal del título; también conocido como el valor principal (opcional, si se omite se asume 1000).
  • basis: La base de conteo de días a utilizar (opcional):
    • 0 o omitido: Base 30/360
    • 1: Base real/real
    • 2: Base real/360
    • 3: Base real/365
    • 4: Européa 30/360

Para usar `AccrIntM` en VBA, necesitas acceder al objeto `WorksheetFunction`, que proporciona acceso a casi todas las funciones de hoja de cálculo excel. Aquí tienes un ejemplo de cómo se podría usar `AccrIntM` en VBA:

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.

Conoce nuestros servicios

Conoce nuestra tienda

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Deja un comentario