powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выполнение программного кода VBA из текста
25 сообщений из 40, страница 1 из 2
Выполнение программного кода VBA из текста
    #38664363
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Помогите пожалуйста с такой проблемой: При нажатии кнопки на форме, открывается другая форма, в двух текстовых полях которой передается имя формы и имя объекта формы (в данном случае ComboBox). Необходимо после нажатии кнопки на второй форме выполнялась процедура очистки ComboBox в первой форме.
Я поступил таким образом:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub lblClear_Click()
 Dim Форма, Объект As String
 Dim Команда As String
    DoCmd.Close
     Форма = "Form_" & txtForm_Name
     Объект = txtObiekt
     Команда = Форма & "." & Объект
End Sub


В итоге должна выполниться команда:
Код: vbnet
1.
   Form_frmFind.cboFind = ""


Вот, как добиться выполнения этой команды?
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664371
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза Access,
извращенец, кури мануалы.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664377
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если судить по нику-кердык ACCESSу
читайте книшки по Аксу (основы проектирования БД)
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664385
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, двое умных уже блеснули своими умом, но знаний у них, думается, не более чем у меня.

Может кто-то все-таки подскажет ответ на вопрос, так, без выпендрежа.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664420
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза Access,
Когда журналюги придумали, что астронавты не были на луне,а все репортажи сняты в студии, NASA даже не стало возражать, считая недостойным оспаривать полный бред:если кто-нибудь серьезно Вам ответит это будет более чем удивительно. В связи с вышесказанным задумайтесь почему Вам не отвечают (такими знаниями как у Вас я не обладал никогда)
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664424
Фотография nord-woolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во второй форме:
Опишите Event -ы бэк модуля формы.
В процедуре обработки события Click кнопки опишите RaiseEvent.

В первой форме:
подпишитесь WithEvents на объект класса бэк модуля второй формы.
В процедуре обработки соответствующего события выполняйте все необходимое.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664438
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuГроза Access,
Когда журналюги придумали, что астронавты не были на луне,а все репортажи сняты в студии, NASA даже не стало возражать, считая недостойным оспаривать полный бред:если кто-нибудь серьезно Вам ответит это будет более чем удивительно. В связи с вышесказанным задумайтесь почему Вам не отвечают (такими знаниями как у Вас я не обладал никогда)
Я за Вас очень рад, но вы многое в жизни потеряли. :-)
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664445
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nord-woolfбэк модуля формы.

думаю пояснения не стали бы лишними
по поводу что такое бэк-модуль формы.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664447
Фотография nord-woolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полином...
по поводу что такое бэк-модуль формы.
Думаете остальные слова ТС более понятны?
:)
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664452
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза AccessНу, двое умных уже блеснули своими умом, но знаний у них, думается, не более чем у меня.

Может кто-то все-таки подскажет ответ на вопрос, так, без выпендрежа.
Отмечусь-ка и я.
Пионэры, идите в жопу (С) Раневская
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664472
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
процедура очистки поля_со_списком в "первой" форме обычно
нужна бывает только при получении "первой" формой фокуса...

и я, например, не вижу никакой необходимости из "второй" формы
очищать поле_со_списком в "первой", хотя это и не невозможно...
(и тем более смешно "очищать" таким "кодом", что привели вы. :) )

если для вас действительно необходимо в коде на VBA подключать
инструкции размещенные во внешнем *.txt файле - это один вопрос...
пусть нетривиальный, но имеющий пути для своего разрешения.

но если для вас важно разместить некоего сферического коня в вакууме
то я, пожалуй, присоединяюсь к экспертной точке зрения П-Л...
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664476
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полиномесли для вас действительно необходимо в коде на VBA подключать инструкции размещенные во внешнем *.txt файле - это один вопрос... пусть нетривиальный, но имеющий пути для своего разрешения.


Да, опять немножко народ недопонял, придется объяснить подробно:
Существует форма, на ней имеются объекты. Среди объектов есть ComboBox (Рис. 1). Рядом с ComboBox, справа, находится кнопка, при нажатии которой появляется окно (форма) где пользователь может выбрать определенные действия (Рис. 2). На появляющимся окне (форме), помимо видимых объектов, имеются два скрытых объекта - текстовые поля, которые названы txtForm и txtObiekt. В текстовом поле txtForm заносится имя формы, где была нажата кнопка - frmFind, в текстовом поле txtObiekt заноситься имя самого объекта, в данном случае имя ComboBox - cboFind. Команда очищающая ComboBox имеет вид
Код: vbnet
1.
Form_frmFind.cboFind = ""

?, для этого я должен соединить информацию из текстовых полей, что и делаю в переменной Команда закрыв до этого активное диалоговое окно (форма):

Код: vbnet
1.
2.
3.
4.
5.
Private Sub lblClear_Click()
 Dim Команда As String
      DoCmd.Close
      Команда = "Form_" & txtObiekt & "." &  txtObiekt
End Sub


Далее надо как-то вставить ="" и надо заставить, что бы эта конструкция работала.
Речи об использовании информации из текстовых файлов (*.txt) в качестве программного кода, нет и не было.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664480
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гроза AccessРечи об использовании информации из текстовых файлов (*.txt) в качестве программного кода, нет и не было.

чо бл*ть???

Да ты сам-то сабжект этого сран*го мессиджа перечти... народ у него недопонял! блджад!

"выполнение ВБА кода из текста " - у кого-то возникли другие предположения?
или это только я такой дебил альтернативно одаренный? нет, серьезно?

хотя, о чем, кого, зачем...
почему я спрашиваю?
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664481
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза Access,

Дело в том, что вы неправильно объясняете, в чем у вас проблема... проблему вы так и не озвучили... вы просто напихали в форму элементов управления, вставили в события обрывки кода VBA из преобразованных макросов и теперь пытаетесь напрячь народ, чтобы разобраться в этой бороде... это все равно что вместо того чтобы спросить: есть молоток, гвоздь и доска как правильно забить в доску гвоздь? Вы говорите - вкрутил в доску руками гвоздь сколько смог, теперь доской бью по молотку, но не всегда попадаю шляпкой об клепало, молоток зажат между колен и пружинит, иногда промахиваюсь и попадаю гвоздем в колено - как сделать, чтоб было не больно и попадало чаще по гвоздю...
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664486
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полином чо бл*ть???
...

vmagДело в том, что вы неправильно объясняете, в чем у вас проблема...

Да как еще объяснить? Попытаюсь еще раз:
В строковой переменной Команда, собирается строка
Код: vbnet
1.
Команда = "Form_" & txtObiekt & "." &  txtObiekt

, которая впоследствии принимает такой вид:
Код: vbnet
1.
Команда ="Form_frmFind.cboFind" 

, в которую мне надо добавить еще знак равенства и кавычки, т.е. ="", для получения полноценной команды
Код: vbnet
1.
Form_frmFind.cboFind = ""

, которая бы выполнялась как программный код.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664489
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза Access,

чтобы из "Form_frmFind.cboFind" сделать Form_frmFind.cboFind = ""

нужно после:
Команда ="Form_frmFind.cboFind"
Добавить:
Команда = Команда & " = " & Chr(34) & Chr(34)

А по хорошему вот это все

Гроза AccessДа как еще объяснить? Попытаюсь еще раз:
В строковой переменной Команда, собирается строка
Код: vbnet
1.
Команда = "Form_" & txtObiekt & "." &  txtObiekt


, которая впоследствии принимает такой вид:
Код: vbnet
1.
Команда ="Form_frmFind.cboFind" 


, в которую мне надо добавить еще знак равенства и кавычки, т.е. ="", для получения полноценной команды
Код: vbnet
1.
Form_frmFind.cboFind = ""


, которая бы выполнялась как программный код.

Заменить на фразу например типа "Как во вновь открытой форме очистить список в вызываемой форме"
ибо никто так и не понял сути - чего же вам в конце концов нужно... просто по русски скажите...
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664492
Осьменоги
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ом-мани падме хум-м
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664502
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmagКоманда = Команда & " = " & Chr(34) & Chr(34)
Спасибо! Вы конечно все правильно написали, и действительно, в итоге получается искомый мною сочетание:
Код: vbnet
1.
Команда =Form_frmFind.cboFind = ""


но:
переменная Команда так и остается строковой переменной т.к. объявлена
Код: vbnet
1.
Dim Команда As String

.
Теперь мне надо объявить другую переменную, равную строковой переменной Команда но так, что бы эта сборка сработала как программный код. Пробовал так:
Код: vbnet
1.
2.
Dim Команда1 As VBA.Collection
      Команда1=Команда


но все равно данная строка выполняться не хочет. Как ее заставить работать?
vmagЗаменить на фразу например типа "Как во вновь открытой форме очистить список в вызываемой форме"
ибо никто так и не понял сути - чего же вам в конце концов нужно... просто по русски скажите...
Мне нужно что бы собранная строка сработала как программный код, т.е. что бы впоследствии очистила ComboBox в той форме, где была нажата кнопка, запустившую форму, приведенную на Рис. 2.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664508
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот только тут начинается суть по делу...

Гроза Accessчто бы впоследствии очистила ComboBox в той форме, где была нажата кнопка, запустившую форму, приведенную на Рис. 2.


Теперь представьте, что вы еще ничего не делали и просто уточняем подробности:
- что значит очистила ComboBox ? (очистилось выбранное значение? Очистился источник строк?)
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664511
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а мне уже это все надоело...
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664515
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гроза Access,

Короче...

В той кнопке которая вызывает форму после вызова формы
вставьте
me!Имя_Комбобокса=""

Если не получится? то в событии Open второй формы вставьте:
Forms!Имя_Первой_Формы!Имя_Комбобокса=""
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664519
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmagВот только тут начинается суть по делу...
Теперь представьте, что вы еще ничего не делали и просто уточняем подробности:
- что значит очистила ComboBox ? (очистилось выбранное значение? Очистился источник строк?)

В Вашем понимании скорее всего будет "очистилось выбранное значение".
К примеру, пользователь нажал кнопку самого ComboBox, и из списка выбрал слово, ну, скажем "Москва". На форме, которая открывается после нажатия кнопки, которая находиться справа от ComboBox, выбрал пункт "Очистить поле", и ComboBox стал пустым, т.е. он стал пустым, удалилось ранее выбранное слово "Москва", при этом, источник строк остался целым и невредимым.
Да и по самой команде строке программного кода вполне понятно, что мне надо:
Код: vbnet
1.
Form_frmFind.cboFind = ""
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664523
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полинома мне уже это все надоело...

Аналогично...
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664524
Гроза Access
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmagГроза Access,
Короче...
В той кнопке которая вызывает форму после вызова формы
вставьте
me!Имя_Комбобокса=""
Если не получится? то в событии Open второй формы вставьте:
Forms!Имя_Первой_Формы!Имя_Комбобокса=""
Тот ответ, который вы привели очень хорош если бы у меня была бы одна форма и на ней был бы один ComboBox, но у меня более 50 форм и хренова туча (около ста, это точно!) этих ComboBox, поэтому я решил использовать одно форму для всех данных элементов, и пошел по такому пути: при нажатии кнопки получаю название формы и имя самого объекта, конектирую полученные имена в строку и полученную строку превращаем в строку программного кода.
Мне, в итоге, надо, что бы полученная текстовая строка
Код: vbnet
1.
Команда ="Form_frmFind.cboFind = """

превратилась в строку программного кода и выполнилась. Точно также, как мы заставляем инструкции SQL работать в коде VBA, и всего то.
...
Рейтинг: 0 / 0
Выполнение программного кода VBA из текста
    #38664528
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гроза Accessи хренова туча (около ста, это точно!) этих ComboBox

:)

я боюсь предположить что вы думаете что это как-то неописуемо круто.
ну или что обрабатывать события 100 комбо-боксов это как-то сложно...

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


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