Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Программное определение переменных в проекте. / 10 сообщений из 10, страница 1 из 1
20.05.2011, 16:00
    #37271789
Oleg_Slip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Доброго дня всем. Возможно ли в проекте VBA Excel программно определить переменную? То есть я из одной книги открываю другую и мне нужно узнать есть ли в ней переменная с определенным именем, и если есть то присвоить ей значение.
...
Рейтинг: 0 / 0
20.05.2011, 18:54
    #37272149
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Код: plaintext
If TypeName(<variable>) <> "Null" Then ...
...
Рейтинг: 0 / 0
25.05.2011, 16:49
    #37278906
Oleg_Slip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
AndreTM
Код: plaintext
If TypeName(<variable>) <> "Null" Then ...

мне нужно знать не тип переменной а есть ли она в коде проекта или нет.
...
Рейтинг: 0 / 0
25.05.2011, 17:40
    #37279007
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Вы поняли, что вам отвечено?
Код: plaintext
1.
2.
3.
4.
If TypeName(MyNumericVariable) <> "Null" Then
    MyNumericVariable =  10 
Else
    MsgBox("Variable 'MyNumericVariable' is missing...")
End If
...
Рейтинг: 0 / 0
25.05.2011, 17:56
    #37279038
ZVI
ZVI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Не понятно, зачем Вам именно так нужно, но можно - см. вложенный пример.
При загрузке WbCode.xls автоматически загрузится и WbWithMyVar.xls
запустится код Auto_Open в WbCode.xls, считается public-переменная MyVar из WbWithMyVar.xls
затем значение MyVar будет изменено из WbCode.xls.
...
Рейтинг: 0 / 0
26.05.2011, 10:52
    #37279987
_slan_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Oleg_SlipAndreTM
Код: plaintext
If TypeName(<variable>) <> "Null" Then ...

мне нужно знать не тип переменной а есть ли она в коде проекта или нет.

вам не кажется логичным утверждение: если у переменной есть тип, то есть сама переменная?
...
Рейтинг: 0 / 0
26.05.2011, 11:59
    #37280153
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
_slan_вам не кажется логичным утверждение: если у переменной есть тип, то есть сама переменная?Слэн, лично я так подозреваю, что если переменной нет и установлена декларация Option Explicit - то код вообще не выполниться, т.к. VBA заорет о необъявленной переменной.
А если убрать декларацию - то тогда переменная будет вегда "Null", т.к. VBA сам назначит ей тип Variant со значением пусто...

Просто лично я понял так, что человеку необходимо узнать - объявлена переменная или нет. Догадываюсь, что не совсем верно понял, ибо странно то, что человек не знает, какие переменные объявлены в проекте...А понял я так по этим словам:
авторесть ли в ней переменная с определенным именем
и по этим
автормне нужно знать не тип переменной а есть ли она в коде проекта или нет
...
Рейтинг: 0 / 0
26.05.2011, 15:25
    #37280767
_slan_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
The_Prist,

тогда шерстить сам проект на наличие такой строки..
...
Рейтинг: 0 / 0
27.05.2011, 01:26
    #37281666
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
_slan_тогда шерстить сам проект на наличие такой строки..Вот-вот...
Поскольку ТС как-то неоднозначно указал задачу, то я и не стал думать о том, чтобы парсить код проекта

_slan_вам не кажется логичным утверждение: если у переменной есть тип, то есть сама переменная?Я подумал так: Вторая книга открывается, исполняется код в модулях вне процедур и в Open/Load/etc. При этом могут быть проинициализированы некие переменные. Вот мой код и проверяет, так ли это...
...
Рейтинг: 0 / 0
30.05.2011, 10:48
    #37284936
Oleg_Slip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное определение переменных в проекте.
Спасибо всем за участие. Извиняюсь что с опозданием отвечаю - два дня не подходил к компьютеру. Проблема самоуничтожилась ).
Задача которую я пытался решить была такова. Есть определенное количество книг. К ним присоединена одна библиотека .xla. Любая из этих книг вызывается из управляющей программы и ей передается набор пераметров посредством строки "имя_параметра1=значение1;...имя_параметраN=значениеN;". В библиотеке есть метод который должен проводить анализ этой строки и присваивать значения параметров переменным книги и запускать процедуру формирующую отчет.
Но, как я уже говорил раньше, решение найдено другим способом.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Программное определение переменных в проекте. / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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