VBA программирование, свежие головы есть?
2127
11
Подскажите, уважаемые.
В MS Access в модуле нужно написать примерно то, что делают руками:

1)Открыть форму
2)Нажать кнопку на форме

Просьба сразу дать пример кода ,т.к. потом будет еще вопрос.

ps.
Сходу не нашел активного форума по VBA. Где бы не написал, сообщение лежит неделями неотвеченное... :а\?:
В каких форумах VBA'шники тусуются? :pivo:
nhps
Что-то не везет... То ли вопрос простой, то ли сложный очень?
В 3-х местах вопрос лежит без ответа.
А там http://bbs.vbstreets.ru/viewforum.php?f=7
после публикации вопроса, что-то упало :death:
SQL Error : 1030 Got error 28 from table handler :безум:
nhps
А в чём проблема то ? Всё это элементарно:
1)Открыть форму - UserForm1.Show
2)Нажать кнопку на форме - Здесь не понял, что имено требуеться :спок: ?
Сибиряк
О, спасибо, а то я уж хотел
1) DoCmd.OpenForm "ФормаМоя"

2) Есть на форме кнопка, если нажать руками, все ok. Если в форму вставить в процедуру "активизации формы", вызов той функции, которая кнопкой запускается, имеем ошибку, т.к. форма еще не до конца загрузилась и инициализировалась.

ps.
Еще один сервер упал от этого вопроса. :смущ:http://www.vbrussian.com/
nhps
Всё равно я не понял, что ты хочешь сделать :а\?: Можешь это более подробно объяснить?
И не плохо было бы включить в сообщение нерабочий код.
Если в форму вставить в процедуру "активизации формы"
В форму можно вставить только объекты (кнопки, чекбоксы, поля итд).
Процедуру в Студию:улыб::спок:!
Сибиряк
1)Открыть форму - UserForm1.Show
Не удалось так :а\?:

Так работает
DoCmd.OpenForm "ФормаМоя", acNormal, , , acFormEdit, acWindowNormal, ""
DoCmd.GoToControl "Кнопка65"
SendKeys """{Enter}""", True

Но мне не нравится - криво как-то :безум:
Сибиряк
Всё равно я не понял, что ты хочешь сделать :а\?: Можешь это более подробно объяснить?
Есть база Access, обычно ее пользователь запускает, открывает форму, нажимает кнопку, по которой открывается excel файл, сохраняет его, все закрывает.

Нужно сделать все то же самое, но автоматически.
Например, если в каталоге имеется файл ex.flg, то Access при запуске сам все делает (открывает форму, нажимает кнопку, сохраняет и все закрывает).

Все это уже сделал. :ха-ха!: С помощью DoCmd... но мучает вопрос, правильно ли так поступать.

попутно возник еще вопрос.
открыл форму DoCmd.OpenForm "ФормаМоя" и хочу перед нажатием кнопки проверить состояние записи источника данных формы. Как?

Про "активизацию формы"(Свойства формы - события - включение) пока забудем - ничего полезного там не нашел, бросил это...
nhps
Можно, конечно, и так. Работает же?
Хотя можно и проще. Можно создать обработчик события открытия БД и скопировать туда обработчик события кнопки :спок:
Сибиряк
Скопировать обработчик события кнопки я тоже хотел, но... :death:
Форма, из которой нажимается кнопка так сделана (не мной), что там очень много кода, инициализирующего массу трудно разобрать чего... пока в этом разберешься... :eek:

По поводу работоспособности... Один раз все зависло с предложением обратится к разработчику или послать что-то в их сторону... :а\?:
nhps
Понимаю...
Ничего хуже, чем копаться в чужом коде наверное нет :ухмылка: :спок:
Сибиряк
Понимаю...
Ничего хуже, чем копаться в чужом коде наверное нет
Сначала да, потом привыкаешь и всё ок :). Да и чемунить новому можно научиться