Error de Excel 1004 "No se puede obtener ... la propiedad de la clase WorksheetFunction" que aparece de manera inconsistente

Tengo una función VBA dentro de una hoja de cálculo que opera en otra hoja de cálculo que se abre en una etapa anterior de mi macro. La macro solía funcionar bien, pero recientemente ha comenzado causando un1004 error"No se puede obtener la propiedad RoundDown de la clase WorksheetFunction") cuando se ejecuta.

Creo que entiendo a qué se debe el error (un problema al ejecutar RoundDown) pero no puedo ver por qué se activa en mi macro y lo extraño es que cuando entro en el modo de depuración y paso por el código en el VBE. el error no se repite (a pesar de que nada cambia obviamente).

¿Alguien tiene una experiencia similar en la que este tipo de error ocurra de manera inconsistente y sepa qué podría hacer para resolverlo?

Soy razonablemente experto en VBA / Excel, pero cualquier sugerencia sobre otros pasos para diagnosticarla sería apreciada. Me pregunto si hay algún problema con la hoja de cálculo abierta que no está lista pero no puedo ver cómo.

El código está aquí. El error se produce en la línea marcada con un comentario.

Public Function GetDatesA(sWorkbookname As String, sSheetname As String, sCell As String) As Variant

    Dim vDateList() As Variant
    Dim currentCell As Range
    Dim n As Long

    Set currentCell = Workbooks(sWorkbookname).Worksheets(sSheetname).Range(sCell)

    n = 0

    Do
        If Trim(currentCell.Value) = "" Then
            Exit Do
        Else
            ReDim Preserve vDateList(0 To 1, 0 To n)
            vDateList(0, n) = WorksheetFunction.RoundDown(currentCell.Value, 0) 'error occcurs on this line
            vDateList(1, n) = currentCell.Column
            'Debug.Print currentCell.Value
        End If
        Set currentCell = currentCell.Offset(0, 1)
        n = n + 1
    Loop While currentCell.Column < XL_LAST_COLUMN

    GetDatesA = vDateList

End Function

Otros detalles son:

Versión de Excel: 2010

El archivo que se está abriendo reside localmente en mi disco C: Mi macro está en una hoja de cálculo en la red.

El formato de archivo para ambos archivos es .xls (es decir, Excel 2003). No tengo la opción de cambiar esto.

Windows 7 (no creo que sea relevante)

Dos puntos que ya he probado son:

Sustituye una función de hoja de cálculo diferente (por ejemplo, Min (currentCell)) y eso también causa el mismo problema

Tener el archivo abierto ya parece detener el problema. Me pregunto si hay alguna forma de que el libro que se está abriendo (en lugar de mi libro principal con la macro) no esté habilitado para macros y esto interfiera. Pero incluso si esta es la causa, no estoy seguro de cómo solucionarlo.

¿Algunas ideas?

Respuestas a la pregunta(3)

Su respuesta a la pregunta