Пример разработки макроса

Пусть необходимо рассчитать количество студентов в группах и внести эти данные в поле КОЛ таблицы ГРУППА. Подсчет количества студентов реализован запросом Число студентов в группе. Обновление поля КОЛ на основе полученных в этом запросе данных выполняет запрос Обновление ГРУППА_КОЛ. Последовательное выполнение этих запросов решает поставленную задачу.

  1. Сначала создадим запрос на обновление.
    Оформим окно конструктора запроса как показано на рисунке:

В схему данных запроса добавлены таблица Группа и таблица Число студентов, полученная после выполнения запроса на создание Число студентов в группе.

  1. Преобразуем запрос на выборку в запрос на обновление. Для этого выполним команду меню Запрос/Обновление. В строке Обновление введем имя поля [Count-НС] таблицы Число студентов, из которой выбираются значения для обновления.
    Сохраним запрос на обновление под именем Обновление ГРУППА_КОЛ.
  2. Создадим макрос, состоящий из макрокоманд, показанных в окне конструктора:

В столбце Примечания записаны комментарии к макрокомандам. В зависимости от выбранной макрокоманды меняется нижняя часть окна конструктора — Аргументы макрокоманды. На рисунке активна макрокоманда СдвигРазмера, которая устанавливает положение и размеры окна таблицы Группа, демонстрируемого после ее обновления.

Сохраним макрос под именем Расчет количества студентов в группах. После нажатия кнопки Запуск получим результаты выполнения макроса, показанные на рисунке.

Поверх окна Группа выводится сообщение, в соответствии с последней макрокомандой.