Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2011, 20:31   #1
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию Запуск макроса из VBA

Доброго времени суток, подскажите пожалуйста код для запуска макросов из VBA

Private Sub КнопкаОК_Click()
If Me!Переключатель = "1" Then
Запуск макрос1
ElseIf Me!Переключатель = "2" Then
Запуск макрос2
Else
Запуск макрос3
End If
End Sub
raytek вне форума Ответить с цитированием
Старый 05.12.2011, 21:27   #2
satka
Форумчанин
 
Регистрация: 17.07.2011
Сообщений: 145
По умолчанию

А зачем? Конвертируете макросы в код VBA. И используйте как хотите.
satka вне форума Ответить с цитированием
Старый 05.12.2011, 21:37   #3
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

а как это делается, скажем простой макрос "Открыть отчет"
raytek вне форума Ответить с цитированием
Старый 05.12.2011, 21:57   #4
satka
Форумчанин
 
Регистрация: 17.07.2011
Сообщений: 145
По умолчанию

Код:
DoCmd.OpenReport "имя отчёта"
А вообще, я никогда не использую макросы, ибо я убеждён, что они медленее выполняются чем код (тем паче компилированный), больше занимают места, менее гибкие чем код, единственный их плюс — они понятнее для создания человеку только начинающему пользоваться Access, так что мой совет изучайте VBA, поначалу трудно, но выгоды перевешивают усилия. По сути: если конвертировать макрос, то создатся одноимённый модуль, где можно посмотреть, как реализовывается команды макроса на VBA.
satka вне форума Ответить с цитированием
Старый 05.12.2011, 22:20   #5
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

спасибо за код, а чем и как конвертировать? я как-то попытался изучать VBA но понял что без знания Английского там делать нечего, я прав?
raytek вне форума Ответить с цитированием
Старый 05.12.2011, 22:38   #6
satka
Форумчанин
 
Регистрация: 17.07.2011
Сообщений: 145
По умолчанию

-тут
-не так строго, хотя и желательно
satka вне форума Ответить с цитированием
Старый 05.12.2011, 22:44   #7
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

Навесил на кнопку код

Private Sub ЗабракованноеОборудование_Click()
DoCmd.OpenReport "оОборудованиеПС"
End Sub

Access ругается даже при открытии формы с этой кнопкой:

-для макрокоманды или метода требуется наличие аргумента "Имя отчета"-

а в принцепе можно запустить макрос из VBA?
raytek вне форума Ответить с цитированием
Старый 05.12.2011, 23:13   #8
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

Цитата:
Сообщение от raytek Посмотреть сообщение
Навесил на кнопку код

Private Sub ЗабракованноеОборудование_Click()
DoCmd.OpenReport "оОборудованиеПС"
End Sub

Access ругается даже при открытии формы с этой кнопкой:

-для макрокоманды или метода требуется наличие аргумента "Имя отчета"-

а в принцепе можно запустить макрос из VBA?
эту причину решил, теперь при нажатии на кнопку ругается "Не был правильно установлен драйвер принтора, используемого по умолчанию"
raytek вне форума Ответить с цитированием
Старый 05.12.2011, 23:48   #9
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

satka - а в 2007 есть Преобразование макроса в код VBA?
raytek вне форума Ответить с цитированием
Старый 06.12.2011, 10:02   #10
satka
Форумчанин
 
Регистрация: 17.07.2011
Сообщений: 145
По умолчанию

Я дико извиняюсь, вас что в гугле забанили? В access 2007 никогда не пользовался преобразованием макросов, но пользуясь логикой, если в access 2003 была эта функция (и я ею пользовался), и в access 2010 есть, то можно с большой вероятностью предположить что в 2007 тоже она присутствует. Я же давал ссылку как преобразовать.
satka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск макроса kaa1977 Microsoft Office Excel 5 12.04.2011 10:44
Запуск макроса Gvaridos Microsoft Office Excel 4 22.11.2010 11:35
Запуск макроса serafim09 Microsoft Office Excel 9 03.09.2009 16:55
Запуск макроса по событию tim13 Microsoft Office Excel 5 17.08.2009 13:33
Запуск макроса с параметрами из другого макроса Saladin Microsoft Office Excel 2 19.01.2009 09:43