I wrote a macro as an add-in, and I need to get the path of the current worksheet on which it is being executed. How do I do this? How do I get the file path (just the directory)?
14 Answers
Use Application.ActiveWorkbook.Path for just the path itself (without the workbook name) or Application.ActiveWorkbook.FullName for the path with the workbook name.
Always nice to have:
Dim myPath As String Dim folderPath As String folderPath = Application.ActiveWorkbook.Path myPath = Application.ActiveWorkbook.FullName If you want to get the path of the workbook from where the macro is being executed - use
Application.ThisWorkbook.Path Application.ActiveWorkbook.Path can sometimes produce unexpected results (e.g. if your macro switches between multiple workbooks).
The quickest way
path = ThisWorkbook.Path & "\" 1