Ir al contenido

Obtener la ruta a un archivo en la carpeta del EXE con VBA

Esta función VBA recupera la ruta completa a un archivo ubicado en el mismo directorio que el EXE de su aplicación. Resulta especialmente útil para acceder a recursos externos o Companion files que distribuye junto con su libro protegido.

👉 Inserte la siguiente función en un módulo VBA:

Public Function PathToFile(ByVal Filename As String) As String
Dim XLSPadlock As Object
Dim exePath As String
On Error GoTo Err
Set XLSPadlock = Application.COMAddIns("GXLSForm.GXLSFormula").Object
exePath = XLSPadlock.PLEvalVar("EXEPath")
' Use Application.BuildPath to correctly join the path and filename
PathToFile = Application.BuildPath(exePath, Filename)
Exit Function
Err:
PathToFile = ""
End Function

A continuación, puede invocar la función:

Sub Test_File()
DoSomethingWith(PathToFile("data.xls"))
End Sub

👉 Consulte también: VBA API Cookbook & Recipes