Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Вложенный макрос



Рис. 40. Вложенный макрос

Любой макрос может содержать несколько вложенных макросов. Вложенный макросможно вызвать по имени с помощью макрокоманд ЗапускМакроса и ПриОшибке.

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

Чтобы создать блок Вложенный макрос, также можно выделить одну или несколько макрокоманд, щёлкнуть их правой кнопкой мыши и выбрать команду Сделать блок вложенного макроса. Вложенные макросы должны всегда располагаться в конце макроса. Под вложенным макросом нельзя добавлять макрокоманды (кроме других вложенных макросов). При запуске макроса, который содержит только вложенные макросы, без указания имени вложенного макроса выполняется только первый вложенный макрос. Для вызова вложенного макроса (например, в свойстве события либо с помощью макрокоманды ЗапускМакросаили ПриОшибке) используйте следующий синтаксис: Имя_макроса.Имя_вложенного_макроса

Группа

Рис. 41. Группировка связанных макросов

Чтобы сделать макрос более удобочитаемым, можно сгруппировать отдельные макрокоманды и присвоить группе осмысленное имя. Например, можно объединить макрокоманды, которые открывают и фильтруют форму, в группу «Открытие и фильтрация формы». В результате будет проще увидеть, какие именно команды связаны между собой. Блок Группане влияет на порядок выполнения команд, и группы нельзя вызывать или выполнять по отдельности. Их основным предназначением является группировка макрокоманд для упрощения понимания макроса. Кроме того, при внесении изменений в крупный макрос можно свернуть все группы до отдельных строк, чтобы не нужно было прокручивать длинный текст.

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

Выделите макрокоманды, которые требуется сгруппировать.

Щёлкните выделенные макрокоманды правой кнопкой мыши и выберите команду Сделать блок группы.

В поле в верхней части блока Группавведите имя группы.

Если макрокоманд ещё нет, выполните указанные ниже действия.

Перетащите блок Группаиз каталога макрокоманд в область макроса.

В поле в верхней части блока Группавведите имя группы.

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

Блоки групп могут содержать другие блоки групп. Максимальный уровень вложенности групп — 9.

3.1.3.
а
Если

г
в
б

Рис. 42. Блок Если, Иначе Если, Иначе

Управление программным потоком с помощью блоков ЕСЛИ, ИНАЧЕ ЕСЛИ, ИНАЧЕ.

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

В поле в верхней части блока Если введите выражение, определяющее, когда именно будет выполнен данный блок. Выражение должно быть логическим (т. е. возвращать значение «Да» или «Нет») (Рис. 42а, стр. 44).

Добавьте в блок Если макрокоманды, выбирая их в раскрывающемся списке Добавить новую макрокоманду, который отображается в этом блоке, или перетаскивая их в блок Если из области каталога макрокоманд. Выделите блок Если, а затем в его правом нижнем углу выберите команду Добавить блок " Иначе " или Добавить блок " Иначе если " (Рис. 42б, Рис. 42в, стр. 44)

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

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





Дата публикования: 2014-11-02; Прочитано: 1182 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...