Как в Excel запустить код VBA, сохраненный в текстовом файле? - PullRequest
1 голос
/ 26 июня 2019

Вместо того, чтобы код VBA сохранялся в модуле внутри файла Excel, я хотел бы сохранить код в текстовом файле, например module1.vba. В Excel module1.vba будет загружен или импортирован и запущен как обычный модуль.

Это возможно? Как это сделать?

В Excel, в редакторе VBA, есть опция Insert > File... в меню, которая делает то, что я хочу, но я не знаю, как автоматизировать это с минимальным кодом VBA, чтобы загрузить реальный сохраненный код как текст.

Причиной этого является возможность контроля версий кода с помощью текстовых приложений, таких как git.

--- редактировать ---

Этот ответ показывает хорошую альтернативную работу. Однако я все еще не слишком счастлив в дублировании вещей.

1 Ответ

2 голосов
/ 26 июня 2019

Вы можете легко импортировать файл VBA, используя простую однострочную строку:

Application.VBE.ActiveVBProject.VBComponents.Import "C:\Path\To\File.bas"

Это работает с файлами, экспортированными из IDE VBA, которые включают такую ​​информацию, как имя модуля и другие свойства, которые можно настроить вдля каждого модуля.

Вам необходимо включить Доверительный доступ к объектной модели проекта VBA , чтобы это работало.Вы можете найти это в настройках центра управления безопасностью в разделе Настройки макроса .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...