Преобразование макросов в процедуры VBA
Если вы создали
много макросов, а потом решили перейти к программированию на VBA, не следует
беспокоиться о том, что придется заново переписывать на VBA все созданные макросы.
В Access существует возможность автоматического преобразования макросов в процедуры
на VBA. Это касается как макросов, связанных с событиями в формах и отчетах,
которые преобразуются в процедуры обработки событий, так и общих макросов, не
связанных с формами и отчетами. Все они преобразуются в отдельные стандартные
модули.
Давайте попробуем
преобразовать в процедуры обработки событий макросы, назначенные событиям формы
"Наклейки для клиентов" (Customers Labels Dialog):
Рис. 11.19.
Преобразование макроса в процедуру VBA
Рис. 11.20.
Процедура, полученная из макроса
В этой процедуре,
полученной из макроса, используются объект DoCmd для выполнения макрокоманды
закрытия формы. В соответствии с флажками, установленными в окне
Преобразование
макроса
(Convert Macro), комментарии в макросе были преобразованы в комментарии
в процедуре и был добавлен код обработки ошибки, который выдает на экран сообщение
об ошибке в случае ее возникновения
(см. гл. 13).
Аналогично
выполняется преобразование макросов, назначенных событиям отчета.
Теперь рассмотрим
преобразование в процедуру VBA макроса, не связанного с событием формы или отчета,
например созданного ранее макроса "Менеджеры по продажам".
Рис. 11.21.
Результат преобразования макроса "Менеджеры по продажам"
После преобразования
исходный макрос "Менеджеры по продажам" не был удален, а в списке
модулей в окне базы данных "Борей" появился новый модуль с именем
"Преобразованный макрос — Менеджеры по продажам" (Converted Macro
— Менеджеры по продажам).
Существует
еще один способ преобразования макросов в модуль VBA:
Рис. 11.22. Сохранение макроса в виде модуля
Работая же с простыми типами данных, например с числовыми, мы манипулируем ими как неделимыми целыми объектами. Чтобы "увидеть", что числовой тип данных на самом деле сложен (является набором битов), нужно перейти на более низкий уровень абстракции. На уровне программного кода это будет выглядеть как ассемблерные вставки в код на языке высокого уровня или использование специальных побитных операций.
Учебник Microsoft Access основы работы ; Живопись, рисунок, графика и анимация. Начертательная геометрия, черчение Профессиональное использование Microsoft Access Разработка и сопровождение приложений