| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS Access > получить в переменную название формы |
| Автор: Dmitriy9 1.7.2013, 15:21 | ||||
Здравствуйте, подскажите как мне получить при запуске формы ее название в переменную для последующей работы с этой переменной (в VBA только разбираюсь!)
Подскажите что не так делаю и как получить переменную, что бы потом ее использовать в любой части проекта |
| Автор: Михайло 1.7.2013, 20:43 |
| Для внутренней переменной достаточно написать так: Dim s As string Private Sub Form_Load() s=Me.Name End Sub Если нужна глобальная переменная, то на закладке "Модули" окна "база данных" создайте модуль с любым именем и таким содержимым: Public s As string |
| Автор: SkCom 1.7.2013, 21:05 | ||||
Назначить глобальную открытую переменную на уровне модуля.
Создать общедоступную Функцию.
Этот ответ добавлен с нового Винграда - http://ru.vingrad.com//object-id51d174e86ccc19f524000002#findElement_E7045_51d1c4d36ccc198a5400a826_0 |
| Автор: Akina 2.7.2013, 07:16 |
Ага... и определил её в модуле класса... молодец, блин! Ну тут ты вообще отличился! Одна строка в теле функции - зато какая! Не лезь ты туда, где НИЧЕГО не смыслишь... Добавлено через 1 минуту и 23 секунды Dmitriy9, для определения переменных уровня проекта создайте ОТДЕЛЬНЫЙ модуль. |
| Автор: Dmitriy9 2.7.2013, 07:34 | ||
SkCom, Сделал все как вы сказали
|
| Автор: Akina 2.7.2013, 07:46 |
| Dmitriy9, не надо бездумно переписывать всякий бред. |
| Автор: Dmitriy9 2.7.2013, 07:49 |
| я в vba разбираюсь только , по этому и пробую что подсказывают, так сказать по принципу проб и ошибок |
| Автор: Akina 2.7.2013, 07:54 |
| Dmitriy9, не надо бездумно переписывать всякий бред. Вы посмотрели, где и для чего используется в VBA ключевое слово Return? |
| Автор: Dmitriy9 2.7.2013, 07:56 | ||||
Это находится в общем модуле, переменная и функция
Так обращаюсь к функции
|
| Автор: Akina 2.7.2013, 08:29 |
1) Русским по белому ж говорил - "для определения переменных уровня проекта создайте ОТДЕЛЬНЫЙ модуль". 2) Почему не определён тип переменной? 3) Что, по твоему мнению, делает эта функция? почему именно это и как именно? ПОДРОБНО! А вот сфига бы ты решил, что на момент события Form_Load форма уже Loaded, а? ну надо же хоть немного головой-то думать? |
| Автор: Dmitriy9 2.7.2013, 09:21 | ||||||||||||
|
| Автор: Dmitriy9 3.7.2013, 08:01 |
| А вообще существует ли вообще эта функция что бы узнать имя формы, или я зря время трачу? После прочтения кучи статей и боли в глазах я начал сомневаться в ее существовании. |
| Автор: Akina 3.7.2013, 08:08 |
| У любого объекта есть куча свойств - в т.ч. и свойство Name. А насчёт функции - вряд ли. |
| Автор: bopoha 4.7.2013, 00:09 | ||
Dmitriy9, в Access есть такая штука, как CodeContextObject, при помощи которого можно узнать в рамках какого объекта выполняется данный метод/функция/процедура:
Мне кажется, что если бы вы начали с конца, т.е. зачем это нужно, было бы проще. |