Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Получение значений переменных из внешнего проекта VBA / 8 сообщений из 8, страница 1 из 1
09.04.2010, 16:19
    #36571191
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Предположим есть некий Excel-евский файл с защищенным проектом VBA, в нём есть некий автозапускаемый макрос. Который в процессе своей работы присваивает некие значения в некоторые переменные типа public. После окончания работы макроса эти значения попрежнему остаются в оперативной памяти и могут быть считаны.
Вопрос, как считать значение определённой переменной из другого проекта не внося изменения в сам проект и не делая какие-либо изменения в файле.

Например путь есть файл xxx.xls, в нём есть переменная Public p и есть файл yyy.xls.
Как из файла yyy.xls получить значение переменной P файла xxx.xls.
В идеале было бы хорошо получить это как-то так: Workbook("xxx.xls").p
...
Рейтинг: 0 / 0
09.04.2010, 16:25
    #36571217
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Замечу ещё такую фишку, что если запустить такой код msgbox p через окно Immediate, то мы получим значение переменной p, даже если проект файла "xxx.xls" закрыт.
...
Рейтинг: 0 / 0
09.04.2010, 16:41
    #36571269
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Djon PlayerЗамечу ещё такую фишку, что если запустить такой код msgbox p через окно Immediate, то мы получим значение переменной p, даже если проект файла "xxx.xls" закрыт.Под закрыт имелось ввиду, что установлен пароль, но пароль не введён.
Т.е. мышкой делаем активным проект "xxx.xls", заходим в окно Immediate, вводим Msgbox p и получаем значение переменной p.
...
Рейтинг: 0 / 0
09.04.2010, 17:39
    #36571451
istoe
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Надо подцепить из yyy проект в xxx
В VBE: TOOLS -> References... -> Выбираем проект из xxx ( по умолчанию он VBAProject)

И теперь в yyy можно обратиться к переменной из xxx: <Имя_Проекта>.P
...
Рейтинг: 0 / 0
16.04.2010, 22:23
    #36583292
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
istoeНадо подцепить из yyy проект в xxx
В VBE: TOOLS -> References... -> Выбираем проект из xxx ( по умолчанию он VBAProject)

И теперь в yyy можно обратиться к переменной из xxx: <Имя_Проекта>.PНеделю на форуме не был.
Спасибо за инфу, попробую.
...
Рейтинг: 0 / 0
16.04.2010, 22:33
    #36583298
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Попробовал всё получилось.
Тут-же возник другой вопрос, можно ли не руками подключать проект через Reference, а программно.
Т.е. в файле yyy.xls задаем путь к файлу xxx.xls и каким-то образом проект файла xxx.xls должен подключиться в референсы к файлу yyy.xls.
...
Рейтинг: 0 / 0
16.04.2010, 22:49
    #36583307
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
...
Рейтинг: 0 / 0
16.04.2010, 23:02
    #36583319
Djon Player
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение значений переменных из внешнего проекта VBA
Hugo121,

Спасибо, потом воспользуюсь полученными знаниями и попробую реализовать.
Пока лишь бегло пробежался по ссылке не сильно вчитываясь, под вечер мозг уже не хочется напрягать.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Получение значений переменных из внешнего проекта VBA / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]