¿Cómo llamar a la función VBA desde celdas de Excel? [duplicar

Esta pregunta ya tiene una respuesta aquí:

¿Cómo llamar a la función VBA desde las celdas de Excel (2010)? 9 respuestas

oy un novato de VBA y estoy tratando de escribir una función a la que pueda llamar desde celdas de Excel, que pueda abrir un libro de trabajo que esté cerrado, buscar un valor de celda y devolverlo.

Hasta ahora sé cómo escribir una macro como esta:

Sub OpenWorkbook()
    Dim path As String
    path = "C:\Users\UserName\Desktop\TestSample.xlsx"

    Dim currentWb As Workbook
    Set currentWb = ThisWorkbook


    currentWb.Sheets("Sheet1").Range("A1") = OpenWorkbookToPullData(path, "B2")
End Sub


Function OpenWorkbookToPullData(path, cell)

    Dim openWb As Workbook
    Set openWb = Workbooks.Open(path, , True)

    Dim openWs As Worksheet
    Set openWs = openWb.Sheets("Sheet1")

    OpenWorkbookToPullData = openWs.Range(cell)

    openWb.Close (False)

End Function

La macro OpenWorkbook () funciona perfectamente bien, pero cuando intento llamar a OpenWorkbookToPullData (...) directamente desde una celda de Excel, no funciona. La declaración

    Set openWb = Workbooks.Open(path, , True)

devuelve nada.

Alguien sabe cómo convertirlo en una función VBA que funcione y que se pueda llamar desde la celda de Excel?

Respuestas a la pregunta(3)

Su respuesta a la pregunta