Я написал макрос как надстройку, и мне нужно получить путь к текущему рабочему листу, на котором он выполняется. Как мне это сделать? Как мне получить путь к файлу (только каталог)?
Как получить путь к текущему рабочему листу в VBA?
Ответ 1
Используйте Application.ActiveWorkbook.Path
только для самого пути (без имени книги) или Application.ActiveWorkbook.FullName
для пути с именем книги.
Ответ 2
Всегда приятно иметь:
Dim myPath As String
Dim folderPath As String
folderPath = Application.ActiveWorkbook.Path
myPath = Application.ActiveWorkbook.FullName
Ответ 3
Если вы хотите получить путь к книге, из которой выполняется макрос, используйте Application.ThisWorkbook.Path
. Application.ActiveWorkbook.Path
может иногда приводить к неожиданным результатам (например, если ваш макрос переключается между несколькими книгами).