Salta ai contenuti

Ottenere il percorso di un file nella cartella dell'EXE con VBA

Questa funzione VBA recupera il percorso completo di un file che si trova nella stessa directory dell’EXE della propria applicazione. È particolarmente utile per accedere a risorse esterne o a file companion distribuiti insieme alla cartella di lavoro protetta.

👉 Inserire la seguente funzione in un modulo 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

È quindi possibile richiamare la funzione:

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

👉 Vedere anche: VBA API Cookbook & Recipes