Форум программистов, компьютерный форум CyberForum.ru
CyberForum.ru - форум программистов и сисадминов > > >
Восстановить пароль Регистрация
 
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 11:51     Работа с формами при помощи VBA   #1
Подскажите пожалуйста, аналог кнопки "обновить все" кодом VBA.
После внесения данных в таблицу надо чтоб на форме, где отображаются эти данные, сразу все обновилось.
Вопрос снят.
Application.forms().refresh

Добавлено через 30 минут
Продолжим) как закрыть форму кодом VBA?
перепробовал разные всякие close unload, не помогает, или я не правильно делаю)
Вот текущий код, что вставить после строки с refresh?
Закрыть надо форму с названием frm_map_add
Код Visual Basic
1
2
3
4
5
Private Sub btn_map_add_Click()
DoCmd.RunSQL "INSERT INTO MAP (MAP_FName, MAP_Name)  VALUES(""" & Pole_MAP_FName.Value & """,""" & Pole_Map_name.Value & """);"
Application.Forms("frm_map").Refresh
 
End Sub
Добавлено через 29 минут
Тоже разобрался...
DOcmd.Close()

Не по теме:

Интересно я так и буду сам с собой общаться?)))



Следующий вопрос: При выполнении строки
Код Visual Basic
1
DoCmd.RunSQL "INSERT INTO MAP (MAP_FName, MAP_Name)  VALUES(""" & Pole_MAP_FName.Value & """,""" & Pole_Map_name.Value & """);"
Возникает окошко с надписью "Будет добавлено следующее число записей:..."
и кнопки "да", "нет". При нажатии "Да" значения добавляются в таблицу и все пучком, а при нажатии "Нет" выскакивает ошибка 2501 "Прервано выполнение макрокоманды RunSQL" как это нормально обработать, как вариант ничего не делать или просто тот же DOcmd.close?

Добавлено через 21 минуту
Разобрался, использовал on error
AdAgent
Объявления
15.12.2009, 11:51    Работа с формами при помощи VBA
Елена
Форумчанин
2415 / 765 / 23
Регистрация: 18.08.2009
Сообщений: 1,693
15.12.2009, 12:22     Работа с формами при помощи VBA   #2
Хорошо, что сам быстро разбираешься, давай уже другим помогай
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 12:30  [ТС]     Работа с формами при помощи VBA   #3

Не по теме:

Эмм, разбираться то разбираюсь, тока работы еще не початый край)))
А помогаю по возможности в теме с экселем, видимо и тут тоже теперь буду)) аксесс вчера первый раз начал пользовать))



Уважаемые модераторы переименуйте тему во что нибудь другое, например "Работа с формами при помощи VBA"

Сдедующий вопрос по теме, как определить ввели в поле какое нибудь значение или оно пустое?
c Null ниче не выходит(
условие типа if a= null или is null не срабатывает(
БурундукЪ
Форумчанин
9061 / 2475 / 25
Регистрация: 17.02.2009
Сообщений: 10,365
15.12.2009, 12:44     Работа с формами при помощи VBA   #4
Код Visual Basic
1
if isnull(a) then
Yurii_74
paladin
279 / 179 / 2
Регистрация: 25.02.2009
Сообщений: 592
15.12.2009, 12:47     Работа с формами при помощи VBA   #5
Попытайтесь проверить длину строки. Если 0, то пусто.
AdAgent
Объявления
15.12.2009, 12:47    Работа с формами при помощи VBA
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 13:19  [ТС]     Работа с формами при помощи VBA   #6
Len от переменной значения null выдает null...
Воспользовался советом CyberБурундукЪ
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 14:11  [ТС]     Работа с формами при помощи VBA   #7
Поехали дальше...
см.приложенный файл
на форме frm_map есть список lst_frm_map, в котором отображаются значения из таблицы MAP
в функции обработки события btn_frm_map_copy_Click() мне необходимо
1.получить значения Map_name, map_fname выбранной строки в списке
2.открыть форму frm_map_add(это я уже умею)
3.внести эти значения в соответствующие поля pole_map_name, pole_map_fname формы frm_map_add
Вложения
Тип файла: rar Model1.rar (46.6 Кб, 126 просмотров)
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 15:21  [ТС]     Работа с формами при помощи VBA   #8
Все еще актуально...
1.получить значения Map_name, map_fname выбранной строки в списке
2.открыть форму frm_map_add(это я уже умею)
разобрался
1.lst_frm_map.Recordset.Fields.Item(1).Value
lst_frm_map.Recordset.Fields.Item(2).Value
2. DoCmd.OpenForm *
можно ли в параметрах OpenForm как то указать передаваемые в открываемую форму значения для полей
или как из модуля одной формы, нужное мне значение передать в модуль другой формы?
БурундукЪ
Форумчанин
15.12.2009, 15:23
  #9

Не по теме:

может не надо все в одну кучу валить
а то свалка получается

Xpoft
Asgard's resident
15.12.2009, 15:34  [ТС]
  #10

Не по теме:

а я наоборот не хотел много тем плодить), вопросы возникают один за одним как видите)
Раз так тогда буду плодить)))

Елена
Форумчанин
2415 / 765 / 23
Регистрация: 18.08.2009
Сообщений: 1,693
15.12.2009, 16:25     Работа с формами при помощи VBA   #11
объясните, пожалуйста, зачем с помощью формы записывать в другую форму данные, сохраненные в таблице? Вообще-то есть кнопки "Добавить запись", "Удалить запись","Закрыть", "Найти запись"
Xpoft
Asgard's resident
89 / 87 / 4
Регистрация: 03.12.2009
Сообщений: 175
15.12.2009, 16:35  [ТС]     Работа с формами при помощи VBA   #12
В списке отображаются значения из таблицы, я хочу организовать наглядное копирование строк с возможностью редактирования, если можно как то проще это сделать посоветуйте пожалуйста)
metiska
Новичок
0 / 0 / 0
Регистрация: 23.07.2010
Сообщений: 18
24.07.2010, 01:44     Работа с формами при помощи VBA   #13
Помогите плз!

Хочу открыть из кнопочной формы другую форму но на определённой записи, которая соответствует значению География поля Предмет. Пробую использовать такую процедуру кнопки

Код Visual Basic
1
2
3
Private Sub BtGeografia_Click()
DoCmd.OpenForm "ФормаИнформация", acNormal, , , Предмет = "География", acFormEdit, acDialog
End Sub
Ничего не получаца.

Укажите пожайлуста на ошибочку
Fedogor
Форумчанин
207 / 93 / 1
Регистрация: 23.07.2010
Сообщений: 235
24.07.2010, 13:37     Работа с формами при помощи VBA   #14
может этот пример поможет

Код PureBasic
1
DoCmd.OpenForm "Chem", acNormal, , "nplavki=" & edtID
можно попробовать так

Код PureBasic
1
DoCmd.OpenForm "ФормаИнформация", acNormal, ,"Предмет=География"
У формы "ФормаИнформация" источником данных должна быть таблица содержащая поле "Предмет" и запмсь "География"

Добавлено через 16 минут
Цитата Сообщение от Xpoft Посмотреть сообщение
можно ли в параметрах OpenForm как то указать передаваемые в открываемую форму значения для полей
или как из модуля одной формы, нужное мне значение передать в модуль другой формы?
попробуй выполнить это после открытия формы2

Имя-формы2.Имя_поля = Имя-формы1.Имя_поля
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.08.2010, 01:51    Работа с формами при помощи VBA

Еще ссылки по теме:

MS Access Работа с формами и запросами

MS Access Работа с формами

MS Access Работа с формами

MS Access Работа с формами

metiska
Новичок
0 / 0 / 0
Регистрация: 23.07.2010
Сообщений: 18
01.08.2010, 01:51     Работа с формами при помощи VBA   #15
Ув. Федор спасибо за внимание

Цитата Сообщение от Fedogor Посмотреть сообщение
может этот пример поможет

можно попробовать так

DoCmd.OpenForm "ФормаИнформация", acNormal, ,"Предмет=География"
У формы "ФормаИнформация" источником данных должна быть таблица содержащая поле "Предмет" и запмсь "География"
у меня все получилось вот так.
Код PureBasic
1
DoCmd.OpenForm "ФормаИнформация", acNormal, ,"Предмет='География'
"........ и.т.д.
Yandex
Объявления
01.08.2010, 01:51    Работа с формами при помощи VBA
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему
Опции темы

Текущее время: 22:09. Часовой пояс GMT +4.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.