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)?

1

4 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.

5

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).

1

The quickest way

path = ThisWorkbook.Path & "\" 
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy