Тема: Путь к запущенному макросу?

Здравствуйте,
Нужно в макросе определить путь к этому же макросу.
Пробую через:

AutoCAD.Application.VBE.activeVBProject.FileName

Выдает путь к другому макросу.
Может нужно через:

AutoCAD.Application.VBE.MainWindow.Caption

Получаю что-то типа:

"Microsoft Visual Basic - \\Sgpsrv2\СПД\Конструкторы\Макросы\SpecKonstr\SpecKonstr.dvb - [Main (Code"

Смущают лишние записи.
А может есть сис.переменная для этого?
Спасибо,

Re: Путь к запущенному макросу?

Понятно, что ничего не понятно.
Подскажите как вы сохраняете (определяете) путь к макросу (который в некоторых случаях бывает нужен).
На случай если его перенесут куда-нибудь.

Re: Путь к запущенному макросу?

Так, во-первых,
два вопроса в одном посте.
Чаще всего это говорит не о пренебрежении автором правил форума, а об отсутствии ясности мысли.
во-вторых,
имеет место путаница в терминах. Вот что говорит по этому поводу Википедия:
Макрос (от англ. macros, мн.ч. от macro) — программный объект, при обработке «развёртывающийся» в последовательность действий и/или команд
Корректный перевод термина с английского — «макрокоманда», слово же «макрос» получило распространение благодаря использованию в локализованных продуктах американской корпорации Microsoft.

То есть обсуждаемый метод ищет не "макрос" а файл, в котором может быть записан макрос.
и в-третьих,
код этот прекрасно работает, поищи и выясни, что именно происходит у тебя?. Почему результаты тебя не устраивают?
Будут конкретные вопросы, возможно, появятся и конкретные ответы.

Re: Путь к запущенному макросу?

> Vildar
Попрубуй так:
Application.VBE.VBprojects(VBProject).FileName
где VBProject as String - имя нужного тебе проекта

Re: Путь к запущенному макросу?

> LeonidSN
по 3 - специально сейчас не получается создать такую ситуацию, а в процессе работы бывает выскакивает эта ошибка. Причина неизвестна, но путь дает к другому загруженному проекту (файлу макроса).

> Mikha
Да. А я то думал что там Name это имя файла. Выглядит без недостатков. Надеюсь переименовывать проект никому не придет в голову. Сэнкс

Re: Путь к запущенному макросу?

Вот небольшой тест, который у меня работает безукоризненнно:

Sub FindFile()
    Dim Path As String
    Path = ThisDrawing.Application.VBE.activeVBProject.FileName
    MsgBox Path
End Sub

Если этот код вставить в новый VBA-проект и попытаться сохранить, то по умолчанию ему будет предложено имя: Project.dvb, то есть имя проекта.
Может это и сбивает с толку? Но в любом случае речь идет об имени файла (файл проекта).