Общие сведения о макросах в Access 2007

В этой статье обсуждается, что такое макросы и как с их помощью можно сэкономить время путем автоматизации часто выполняемых задач. В нем затрагиваются основы создания и использования макросов, а также новые возможности макросов в Microsoft Office Access 2007.

В этой статье:


Что такое макрос?

Макрос — это средство для автоматизации задач и добавления функциональных возможностей в формы, отчеты и элементы управления. Например, при добавлении командной кнопки в форму событие кнопки OnClick связывается с макросом, который содержит команды, выполняемые при каждом нажатии кнопки.

В приложении Access макросы можно рассматривать как упрощенный язык программирования, на котором программа записывается в виде списка макрокоманд (Макрокоманда. Основной компонент макроса; замкнутая инструкция, самостоятельно или в комбинации с другими макрокомандами определяющая выполняемые в макросе действия. В других макроязыках макрокоманды иногда называют просто командами.) для выполнения. При создании макроса каждая макрокоманда выбирается из раскрывающегося списка, после чего к ней добавляется необходимая информация. Макросы позволяют добавлять функциональные возможности в формы, отчеты и элементы управления без необходимости написания кода в модуле Visual Basic для приложений (VBA) (VBA (Visual Basic for Applications). Версия макроязыка программирования Microsoft Visual Basic, используемая для программирования приложений для Microsoft Windows и поставляемая с некоторыми программами корпорации Майкрософт.). Макросы обеспечивают выполнение части команд, доступных в VBA, и для большинства пользователей создание макроса оказывается проще, нежели написание кода VBA.

Предположим, требуется запустить отчет непосредственно из формы ввода данных. Можно добавить в форму кнопку и затем создать макрос, который будет запускать отчет. Макрос может быть изолированным (отдельный объект в базе данных), который затем связывается с событием OnClick для кнопки, или же он может быть внедрен непосредственно в событие кнопки OnClick — это новая возможность в Office Access 2007. В любом случае, при нажатии кнопки выполняется макрос, который запускает отчет.

Макрос создается с помощью построителя макросов, показанного на следующем рисунке.

Построитель макросов

Чтобы отобразить построитель макросов

  • На вкладке Создание в группе Другие щелкните Макрос. Если эта команда недоступна, щелкните стрелку либо под кнопкой Модуль, либо под кнопкой Модуль класса, а затем щелкните Макрос.Изображение кнопки

К началу страницы К началу страницы

Общие сведения о макросах

Термин «макрос» часто используется по отношению к изолированным макрообъектам (то есть объектам, отображаемым в области переходов в разделе Макросы), но на самом деле, один макрообъект может содержать несколько макросов. В этом случае он называется группой макросов. Группа макросов отображается в панели переходов как один объект, хотя в действительности содержит несколько макросов. Разумеется, каждый макрос может быть создан как отдельный макрообъект, но зачастую имеет смысл сгруппировать несколько связанных макросов в один макрообъект. Имя в столбце Имя макроса идентифицирует каждый макрос.

Макрос состоит из отдельных макрокоманд. Для большинства макрокоманд требуется один или несколько аргументов. Каждому макросу в группе может быть присвоено имя и добавлены условия для контроля за выполнением каждой макрокоманды. В следующем разделе подробно рассмотрена каждая эта особенность.

Имена макросов

Если макрообъект содержит только один макрос, имя макроса излишне. Для макроса может использоваться имя макрообъекта. Однако в случае группы макросов необходимо присвоить каждому макросу уникальное имя. Если столбец Имя макроса не отображается в построителе макросов, нажмите кнопку Имена макросовИзображение кнопки в группе Отображение на вкладке Конструктор. Дополнительные сведения о выполнении макросов в группе см. далее в этой статье.

Аргументы

Аргумент — это значение, которое обеспечивает необходимую для макрокоманды информацию, например, какая строка должна отображаться в окне сообщения, с каким элементом управления следует выполнять действия и т. п. Некоторые аргументы являются обязательными, другие — нет. Аргументы отображаются в области Аргументы макрокоманды в нижней части окна построителя макросов.

Ввод аргументов макрокоманды

В построителе макросов в Office Access 2007 имеется столбец Аргументы, позволяющий просматривать (но не изменять) аргументы макрокоманды в строке макрокоманды. Так легче читать макрос, так как уже не нужно выбирать каждую макрокоманду, чтобы увидеть ее аргументы. Чтобы отобразить столбец Аргументы, нажмите кнопку АргументыИзображение кнопки в группе Отображение на вкладке Конструктор.

Условия

Условие определяет требования, которые должны быть соблюдены, для того чтобы была выполнена макрокоманда. Можно использовать любое выражение (Выражение. Сочетание математических и логических операторов, констант, функций, имен полей, элементов управления и свойств, в результате обработки которого получается единственное значение. Выражение может выполнять вычисления, обрабатывать текст или проверять данные.), результатом которого являются значения «Истина» или «Ложь» либо «Да» или «Нет». Если выражение вычисляется как «Ложь», «Нет» или 0 (нуль), макрокоманда не будет выполнена. При любом другом значении выражения макрокоманда будет выполнена.

Одно условие может управлять несколькими макрокомандами, если в столбце Условие ввести многоточие (...) для каждой следующей по порядку макрокоманды, к которой будет применяться данное условие. Если выражение вычисляется как «Ложь», «Нет» или 0 (нуль), ни одна из макрокоманд не будет выполнена. При любом другом значении выражения будут выполнены все макрокоманды.

Для отображения в построителе макросов столбца Условия на вкладке Конструктор в группе Отображение нажмите кнопку УсловияИзображение кнопки

Выражение, используемое как условие Условие, при котором выполняется макрокоманда
[Город]="Париж" Поле «Город» в форме, из которой запускается макрос, имеет значение «Париж».
DCount("[КодЗаказа]", "Заказы")>35 Количество записей в поле «КодЗаказа» таблицы «Заказы» превышает 35.
DCount("*", "Заказано", "[КодЗаказа]=Forms![КодЗаказа]![КодЗаказа]")>3 В таблице «Заказано» содержится более 3 записей, у которых поле «КодЗаказа» в таблице соответствует полю «КодЗаказа» в форме «КодЗаказа».
[ДатаИсполнения] Between #2-фев-2006# And #2-мар-2006# Значение поля «ДатаИсполнения» в форме, из которой запускается макрос, попадает в интервал со 2 февраля 2006 по 2 марта 2006 г.
Forms![Товары]![На складе]<5 Значение поля «На складе» в форме «Товары» меньше 5.
IsNull([Имя]) Поле «Имя» в форме, из которой запускается макрос, имеет значение Null (Null. Значение, которое можно ввести в поле или использовать в выражениях и запросах для указания отсутствующих или неизвестных данных. В Visual Basic ключевое слово Null указывает значение Null. Некоторые поля, такие как поля первичного ключа, не могут содержать значение Null.) (не заполнено). Это выражение эквивалентно следующему: [Имя] Is Null.
[Страна]="UK" And Forms![СуммыПродаж]![ВсегоЗаказов]>100 Поле «Страна» в форме, из которой запускается макрос, имеет значение «Великобритания», и значение поля «ВсегоЗаказов» в форме «СуммыПродаж» больше 100.
[Страна] In ("Франция", "Италия", "Испания") And Len([Индекс])<>5 Поле «Страна» в форме, из которой запускается макрос, имеет значение «Франция», «Италия» или «Испания», и почтовый индекс содержит не 5 символов.
MsgBox("Подтвердить изменения?",1)=1 Нажата кнопка ОК в диалоговом окне, в котором функция MsgBox отображает текст «Подтвердить изменения?». Если в диалоговом окне нажата кнопка Отмена эта макрокоманда будет пропущена.
[TempVars]![MsgBoxResult]=2 Временная переменная, которая используется для хранения результата окна сообщения, равна 2 (vbCancel=2).

 Совет.   Чтобы приложение Access временно пропускало макрокоманду, введите в качестве условия значение «Ложь». Временный пропуск макрокоманды может применяться при поиске ошибок в макросе.

Макрокоманды

Макрокоманды — это простейшие элементы, из которых строится макрос. В приложении Access предусмотрен большой выбор макрокоманд, которые позволяют выполнять разнообразные действия. Например, наиболее часто используются макрокоманды для открытия отчета, поиска записи, отображения окна сообщения или применения фильтра к форме или отчету.

К началу страницы К началу страницы

Новые возможности макросов в Office Access 2007

В предыдущих версиях Access для выполнения наиболее часто используемых функций требовалось написание кода VBA. В Office Access 2007 включены новые возможности и макрокоманды, которые позволяют избежать этого. Благодаря им процесс добавления функциональных возможностей в базу данных стал проще и надежнее.

  • Внедренные макросы    В новой версии появилась возможность внедрять макросы в любые события, предусмотренные в форме, отчете или элементе управления. Внедренный макрос не отображается в области переходов, он становится компонентом формы, отчета или элемента управления, в которых он был создан. При создании копии формы, отчета или элемента управления, содержащих внедренные макросы, в этой копии также будут содержаться макросы.
  • Усиленная защита    Если кнопка Отобразить все макрокомандыИзображение кнопки в построителе макросов не выделена, будут доступны только те макрокоманды и аргументы макрокоманды «ВыполнитьКоманду», для выполнения которых не требуется присваивать им состояние надежных. Макрос, построенный из таких макрокоманд, будет выполняться, даже если база данных находится в режиме блокировки выполнения программ (когда выполнение кода VBA запрещено). Базам данных с макрокомандами, не включенными в список надежных, — или базам данных с кодом VBA — необходимо явно присвоить состояние надежных баз данных.
  • Обработка ошибок и отладка    В Office Access 2007 включены новые макрокоманды, в том числе ПриОшибке (аналог оператора On Error в VBA) и УстранитьОшибкуМакроса, которые позволяют выполнять определенные макрокоманды при ошибке выполнения макроса. Кроме того, новая макрокоманда Шаг позволяет включить пошаговый режим в любом месте макроса и наблюдать за последовательным выполнением отдельных макрокоманд.
  • Временные переменные    Три новые макрокоманды (ЗадатьВремПеременную, УдалитьВремПеременную и УдалитьВсеВремПеременные) дают возможность создавать и использовать в макросе временные переменные. Они могут использоваться в условных выражениях для управления выполнением макроса, для передачи данных в формы или отчеты и обратно, а также для любых других целей, которые требуют временного места для хранения значения. Эти временные переменные доступны также в VBA, поэтому могут использоваться для обмена данными с модулями VBA.

К началу страницы К началу страницы

Создание макроса

В Office Access 2007 макрос или группа макросов могут быть заключены в объект макроса (называемый иногда изолированным макросом), или макрос может быть внедрен в любое свойство события в форме, отчете или элементе управления. Внедренные макросы становятся частью объекта или элемента управления, в которые они внедрены. Изолированные макросы отображаются в области переходов в разделе Макросы, в отличие от внедренных.

Функции построителя макросов

Построитель макросов служит для создания и изменения макросов. Он открывается следующим образом.

  • На вкладке Создание в группе Другие щелкните Макрос. Если эта команда недоступна, щелкните стрелку либо под кнопкой Модуль, либо под кнопкой Модуль класса, а затем щелкните Макрос.Изображение кнопки

Приложение Access откроет построитель макросов.

Построитель макросов используется для создания списка макрокоманд, которые должны выполняться при запуске макроса. При первом открытии построителя макросов отображаются столбцы Макрокоманда, Аргументы и Примечание.

В области Аргументы макрокоманды при необходимости вводятся или изменяются аргументы для каждой макрокоманды. В поле описания отображается краткое описание каждой макрокоманды и аргумента. Для просмотра описания щелкните макрокоманду или аргумент.

В следующей таблице показаны команды, доступные на вкладке Конструктор в построителе макросов.

Группа Команда Описание
Сервис     Выполнить     Выполнение макрокоманд, перечисленных в макросе.
Пошагово     Включение режима пошагового выполнения макроса. При запуске макроса в этом режиме происходит поочередное выполнение каждой макрокоманды. После завершения каждой макрокоманды отображается диалоговое окно Пошаговое исполнение макроса. Для перехода к следующей макрокоманде нажмите в этом диалоговом окне кнопку Шаг. Нажмите кнопку Остановить все макросы, чтобы остановить исполнение этого и всех остальных макросов. Нажмите кнопку Далее, чтобы выйти из пошагового режима и выполнить остальные макрокоманды без остановки.
Построитель     Эта кнопка активируется при вводе аргумента макрокоманды, содержащего выражение. Щелкните кнопку Построитель, чтобы открыть диалоговое окно Построитель выражений, в котором можно создать выражение.
Строки     Вставить строки     Добавление одной или нескольких пустых строк макрокоманд над выбранными строками.
Удалить строки     Удаление выбранных строк макрокоманд.
Отображение     Отобразить все макрокоманды    

Отображение большего или меньшего количества макрокоманд в раскрывающемся списке Макрокоманда.

  • Для отображения более длинного списка макрокоманд нажмите кнопку Отобразить все макрокоманды. Если выбран полный список макрокоманд, кнопка Отобразить все макрокоманды выделена. При выборе макрокоманды в полном списке перед ее выполнением может потребоваться предоставить базе данных надежное состояние явным образом.
  • Для отображения краткого списка, включающего только макрокоманды, которые могут использоваться в базе данных, не имеющей состояния надежной, кнопка Отобразить все макрокоманды не должна быть выделена.

 Совет.   Если кнопка Отобразить все макрокоманды выделена, снимите выделение, нажав эту кнопку.

Если кнопка Отобразить все макрокоманды не выделена, доступен краткий список макрокоманд для надежной базы данных.

Имена макросов     Отображение или скрытие столбца Имя макроса. Имена макросов необходимы в группе, чтобы можно было различать отдельные макросы, в противном случае они не обязательны. Дополнительные сведения см. в разделе Создание группы макросов далее в этой статье.
Условия     Отображение или скрытие столбца Условие. Этот столбец служит для ввода выражений, которые определяют условия выполнения макрокоманды.
Аргументы     Отображение или скрытие столбца Аргументы. В этом столбце отображаются аргументы для каждой макрокоманды, что упрощает просмотр макроса. Если столбец Аргументы не отображается, приходится щелкать каждую макрокоманду и просматривать аргументы в разделе Аргументы макрокоманды. Ввод аргументов в столбце Аргументы невозможен.

Создание изолированного макроса

  1. На вкладке Создание в группе Другие щелкните Макрос. Если эта команда недоступна, щелкните стрелку либо под кнопкой Модуль, либо под кнопкой Модуль класса, а затем щелкните Макрос.Изображение кнопки

Будет открыт построитель макросов.

  1. Добавьте в макрос макрокоманду.

ПоказатьСоветы


  • При необходимости введите примечания к макрокоманде.
  1. Чтобы добавить в макрос следующую макрокоманду, перейдите в другую строку макрокоманды (Строка действия. Строка в верхней части вкладки объекта «Макрос», в которую вводятся имена макросов, действия, аргументы и примечания для определенного макроса или группы макросов.) и повторите шаг 2. Приложение Access выполняет макрокоманды в том порядке, в котором они перечислены.

К началу страницы К началу страницы

Создание группы макросов

Для группировки нескольких связанных макросов в один объект макроса можно создать группу макросов.

  1. На вкладке Создание в группе Другие щелкните Макрос. Если эта команда недоступна, щелкните стрелку либо под кнопкой Модуль, либо под кнопкой Модуль класса, а затем щелкните Макрос.Изображение кнопки

Будет открыт построитель макросов.

  1. На вкладке Конструктор в группе Отображение нажмите кнопку Имя макросаИзображение кнопки, если она еще не была нажата. В построителе макросов будет отображен столбец Имя макроса.

 Примечание.   Имена макросов необходимы в группе, чтобы можно было различать отдельные макросы. Имя макроса появляется в одной строке с первой макрокомандой макроса. Столбец имени макроса остается пустым всех для последующих макрокоманд данного макроса. Макрос заканчивается при вводе следующего имени макроса в этом столбце.

  1. В столбце Имя макроса введите имя первого макроса из группы.
  2. Добавьте макрокоманды для исполнения в первом макросе.
    • В столбце Макрокоманда щелкните стрелку, чтобы раскрыть список макрокоманд.
    • Выберите макрокоманду, которую требуется добавить.
    • В разделе Аргументы макрокоманды укажите аргументы макрокоманды, если они нужны. Щелкните поле аргумента, чтобы увидеть его краткое описание справа от аргумента.

ПоказатьСоветы

  • Для аргументов макрокоманд, параметры которых служат именами объектов базы данных, можно задать аргумент, перетащив объект из области переходов в поле аргумента Имя объекта.
  • Можно также создать макрокоманду, перетащив объект базы данных из области переходов в пустую строку в построителе макросов. При перетаскивании таблицы, запроса, формы, отчета или модуля в построитель макросов добавляется макрокоманда, открывающая таблицу, запрос, форму или отчет. При перетаскивании макроса в построитель макросов добавляется макрокоманда, запускающая макрос.

  • При необходимости введите примечания к макрокоманде.
  1. Перейдите к следующей пустой строке в столбце Имя макроса и введите имя очередного макроса из группы.
  2. Добавьте макрокоманды для выполнения в этом макросе.
  3. Повторите действия 5 и 6 для каждого макроса в группе.

 Примечания 

  • При запуске группы макросов двойным щелчком в области переходов или нажатием кнопки ВыполнитьИзображение кнопки на вкладке Конструктор в группе Инструменты, Access выполняет только первый макрос, останавливаясь на имени второго.
  • При сохранении группы макросов указываемое имя относится ко всей группе макросов. Это имя отображается в разделе Макросы в области переходов. Для ссылки на отдельный макрос внутри группы используется следующий синтаксис:

ИмяГруппыМакросов.ИмяМакроса

Например, название «Кнопки.Товары» относится к макросу «Товары» в группе макросов «Кнопки». В списке макросов, например, в списке аргументов «Имя макроса» для макрокоманды ВыполнитьМакрос, макрос «Товары» будет отображаться как «Кнопки.Товары».

К началу страницы К началу страницы

Создание внедренного макроса

Внедренные макросы отличаются от изолированных тем, что хранятся в свойствах событий в формах, отчетах или элементах управления. Они не отображаются как объекты в разделе Макросы в области переходов. Это облегчает управление базой данных, поскольку отпадает необходимость отслеживать отдельные макрообъекты, содержащие макросы для формы или отчета. Используйте следующую процедуру для создания внедренного макроса.

 Примечание.   Внедренные макросы нельзя преобразовать в модули Visual Basic для приложений (VBA) с помощью инструмента Преобразование макроса в модули Visual BasicИзображение кнопки в группе Макрос на вкладке Инструменты для базы данных. Если планируется со временем преобразовать макрос в модули VBA, постройте изолированный макрос, а не внедренный. В таком случае можно будет воспользоваться инструментом Преобразование макроса в модули Visual Basic для преобразования макросов в VBA.

  1. Откройте форму или отчет, в которые требуется внедрить макрос, в режиме конструктора или макета. Для этого щелкните форму или отчет в области переходов правой кнопкой мыши и выберите пункт Режим конструктораИзображение кнопки или Режим макетаИзображение кнопки.
  2. Если страница свойств еще не отображена, для ее отображения нажмите клавишу F4.
  3. Щелкните элемент управления или раздел, содержащий свойство события, в которое следует внедрить макрос.

Чтобы выбрать всю форму или отчет, выберите Отчет в раскрывающемся списке вверху страницы свойств.

  1. Откройте вкладку Событие на странице свойств.
  2. Щелкните свойство события, в которое нужно внедрить макрос, и нажмите кнопку Изображение кнопки рядом с полем.
  3. В диалоговом окне Построитель выделите пункт Макросы и затем нажмите кнопку ОК.
  4. В построителе макросов щелкните первую строку в столбце Макрокоманда.
  5. В раскрывающемся списке Макрокоманда выберите нужную макрокоманду.
  6. Укажите в области Аргументы макрокоманды все требуемые аргументы и перейдите к следующей строке макрокоманды.
  7. Повторяйте шаги 8 и 9, пока не завершите построение макроса.
  8. Нажмите кнопку СохранитьИзображение кнопки, затем нажмите кнопку ЗакрытьИзображение кнопки.

Макрос будет выполняться каждый раз при возникновении события.

 Примечание.   Приложение Access позволяет создавать группу макросов как внедренный макрос. Однако при возникновении события выполняется только первый макрос из группы. Остальные макросы игнорируются, если они не вызываются из самого внедренного макроса (например, макрокомандой ПриОшибке).

Пример. Внедрение макроса в событие отчета «Отсутствие данных»

Если при запуске отчета в источнике данных отсутствуют записи, отображается пустая страница отчета — то есть страница, на которой отсутствуют данные. Иногда желательно, чтобы вместо пустой страницы отображалось окно сообщения. Идеальным решением в этой ситуации является использование внедренного макроса.

  1. Откройте отчет в режиме конструктора или макета.
  2. Если страница свойств еще не отображена, для ее отображения нажмите клавишу F4.
  3. Откройте вкладку Событие на странице свойств.
  4. Выберите событие Отсутствие данных.
  5. Нажмите кнопку Изображение кнопки.
  6. В диалоговом окне Построитель выделите пункт Макросы и затем нажмите кнопку ОК.
  7. Введите макрокоманды и аргументы из следующей таблицы.
Макрокоманда Аргументы
MsgBox «Записи не обнаружены.»; «Да»; «Сведения»; «Нет данных»
ОтменитьСобытие [аргументы отсутствуют]
  1. Обратите внимание, что в предыдущей таблице аргументы представлены в том виде, в каком они отображаются в столбце Аргументы. Фактически они вводятся в разделе Аргументы макрокоманды, как показано в следующей таблице.
Аргумент макрокоманды Значение
Сообщение Записи не обнаружены.
Сигнал Да
Тип Сведения
Заголовок Нет данных
  1. Нажмите кнопку Закрыть.

Построитель макросов будет закрыт, а для события Отсутствие данных будет выведено сообщение [Внедренный макрос].

  1. Сохраните и закройте отчет.

Если при следующем запуске отчета записи не будут обнаружены, появится окно сообщения. При нажатии в этом окне кнопки ОК отчет будет отменен без отображения пустой страницы.

К началу страницы К началу страницы

Изменение макроса

  • Вставка строки макрокоманды    Щелкните строку макроса, выше которой нужно вставить новую макрокоманду, и на вкладке Конструктор в группе Строки нажмите кнопку Вставить строкиИзображение кнопки.
  • Удаление строки макрокоманды    Щелкните строку макрокоманды, которую нужно удалить, и на вкладке Конструктор в группе Строки нажмите кнопку Удалить строкиИзображение кнопки.
  • Перемещение строки макрокоманды    Выберите макрокоманду, щелкнув область выделения строки слева от имени макрокоманды. Перетащите область выделения строки, чтобы переместить макрокоманду в другое положение.

К началу страницы К началу страницы

Дополнительные сведения о макрокомандах

В построителе макросов можно получить дополнительные сведения о макрокоманде или аргументе, выделив нужный элемент и ознакомившись с описанием в поле, расположенном в правом нижнем углу окна построителя макросов. Кроме того, каждой макрокоманде посвящен отдельная статья справки. Для получения дополнительных сведений о макрокоманде щелкните макрокоманду в списке и затем нажмите клавишу F1.

К началу страницы К началу страницы

Запуск макроса

Изолированные макросы можно запустить несколькими способами: непосредственно (например, из области переходов), из группы макросов, из другого макроса, из модуля VBA или в ответ на событие в форме, отчете или элементе управления. Для запуска макроса, внедренного в форму, отчет или элемент управления, нажмите кнопку ВыполнитьИзображение кнопки на вкладке Конструктор, когда макрос находится в режиме конструктора. Иначе этот макрос будет выполняться только по событию, с которым он связан.

Непосредственный запуск макроса

Для непосредственного запуска макроса выберите один из следующих вариантов.

  • Найдите макрос в области переходов и дважды щелкните его имя.
  • На вкладке Инструменты базы данных в группе Макрос нажмите кнопку Выполнить макросИзображение кнопки, выберите макрос в списке Имя макроса и нажмите кнопку ОК.
  • Если макрос открыт в режиме конструктора, нажмите кнопку ВыполнитьИзображение кнопки на вкладке Конструктор в группе Инструменты. Чтобы открыть макрос в режиме конструктора, щелкните его правой кнопкой мыши в области переходов и нажмите кнопку КонструкторИзображение кнопки.

Запуск макроса, находящегося в группе макросов

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

  • На вкладке Инструменты базы данных в группе Макрос нажмите кнопку Выполнить макросИзображение кнопки и выберите нужный макрос в списке Имя макроса.

Для каждого макроса в группе макросов используется формат ИмяГруппыМакросов.ИмяМакроса.

ИмяГруппыМакросов.ИмяМакроса

Например, для запуска макроса «Категории» в группе «Кнопки кнопочной формы» используется следующее значение свойства события:

Кнопки кнопочной формы.Категории

  • Запустите макрос, находящийся в группе макросов, из процедуры VBA с помощью метода RunMacro объекта DoCmd, используя при этом описанный выше синтаксис для ссылки на макрос.

Запуск макроса из другого макроса или из процедуры VBA

Добавление макрокоманды ВыполнитьМакрос в макрос или процедуру.

  • Для добавления макрокоманды ВыполнитьМакрос в макрос выберите ее в списке макрокоманд в пустой строке макрокоманды и укажите в аргументе Имя макроса имя запускаемого макроса.
  • Для добавления макрокоманды ВыполнитьМакрос в процедуру VBA включите в процедуру метод RunMacro объекта DoCmd и укажите имя запускаемого макроса. Например, следующий экземпляр метода RunMacro запускает макрос «Мой макрос»:
DoCmd.RunMacro "My Macro"

Запуск макроса в ответ на событие в форме, отчете или элементе управления

Несмотря на новую возможность внедрять макросы непосредственно в свойства событий в формах, отчетах и элементах управления можно, как и в предыдущих версиях Access, создавать изолированные макросы и затем связывать их с событиями.

  1. После создания изолированного макроса откройте форму или отчет в режиме конструктора или макета.
  2. Откройте окно свойств для формы, отчета, раздела или элемента управления в форме или отчете.
  3. Откройте вкладку Событие.
  4. Выберите свойство события, которое будет запускать макрос. Например, чтобы запустить макрос в ответ на событие Изменение, выберите свойство Изменение (On Change).
  5. Выберите имя изолированного макроса в раскрывающемся списке.
  6. Сохраните форму или отчет.

К началу страницы К началу страницы

 
 
Применимо к:
Access 2007