Способы выполнения макрокоманд. Выполнение макроса. Добавление в макрос макрокоманд для обработки ошибок

Палитра Actions (Операции) используется для записи, выполнения и редактирования последовательности действий по обработке изображений (такуюпоследовательность действий, получающую название и запускающуюся одной командой, принято называть МАКРОКОМАНДОЙ).Для того чтобы вывести палитру на экран, необходимо выполнить командуActions (Операции) меню Window (Окно).

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


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


В нижней части палитры расположены следующие кнопки:
Stop Playing/Recording (Остановка выполнения/записи);
Record (Запись);
Play (Воспроизведение);
New Set (Новый набор);
New Action (Новая операция);
Trash (Корзина).



Однако палитра может иметь и другой вид - в форме командных кнопок.Чтобы представить палитру в таком виде, необходимо открыть список команд палитры и выбрать пункт Button Mode (Представить в виде кнопок).Для возврата в списочный режим палитры следует выполнить ту же командуповторно.


ИЗМЕНЕНИЕ ПОРЯДКА КОМАНД В МАКРОКОМАНДЕ


Пользователь имеет возможность видоизменить последовательность выполнения команд. Кроме того, команды одной макросы можно переместить в другие.


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


СОЗДАНИЕ И ЗАПИСЬ МАКРОКОМАНД


Создание макрокоманды - на сленге дизайнеров и разработчиков графики - "экшена"(action) заключается в том, что во время выполнения той или иной последовательности команд программа Adobe Photoshop записывает их в том же порядке, включая и те параметры, которые применялись каждой конкретной командой. Таким образом, можно записать любую последовательность команд и в дальнейшем использовать ее, сокращая время и, главное, усилия на выполнение рутинных операций.



Разработка подобных макрокоманд - "экшенов" открывает широкие возможности пользователям для приложения своих творческих сил. По назначению результат близок к модулю Plugin, но создается легче и не требует специальных знаний.


В макропрограмме могут использоваться действия инструментов Gradient(Градиент), Marquee (Область), Crop, Polygon LassoLine (Линия), Move, Magic Wand (Волшебная палочка), PaintBucket (Заливка) и Type, а также установки палитр Paths(Контуры), Channels (Каналы), Layers (Слои) и History (История).


Однако существуют и ограничения: некоторые команды и функции могутвключаться в макросы только с помощью процедуры записи выполняемых действий. Для включения в операцию команд, которые не могут быть определены во время записи, следует использовать команду Insert Menu Item (Вставить пункт меню).


Любопытно, что в макрокоманду могут быть помещены команда Play(Вопроизведение) из меню палитры и команда Batch (Пакетная обработка)меню File/Automate (Файл/Автоматизация).


Следует обратить внимание еще на одно очень существенное ограничение.Успех выполнения записанной макросы с другим документом и в другое время в значительной степени зависит от параметров другого документа (цветовой модели, разрешения, активного слоя и т. д.), а также от текущих установок программы (например, основного и фонового цветов и некоторых других).


Скажем, использование фильтра Gaussian Blur (Размытие по Гауссу) со значением 3 пиксела к документу с разрешением для экрана (72 dpi) - это совсем не то, что применение его к изображению с высоким разрешением (300 dpi). Поэтому макросы, создаваемые таким образом, в значительной степени могут иметь сугубо ситуативный характер. Но и это может сэкономить много времени, особенно если речь идет о большом объеме однотипной обработки изображений.


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


Следует также иметь в виду, что при использовании в качестве элементовмакросы команд Save As (Сохранить как) или Save a Copy (Сохранить копию) в диалоговых окнах этих команд не нужно вводить конкретные имена файлов.


ПОЕХАЛИ!


Итак, для того чтобы создать макрокоманду методом записи, необходимо открыть редактируемый документ, вывести на экран палитру Actions (Операции), выбрать в ней набор макрокоманд и выполнить одно из двух действий:- нажать на кнопку New Action (Новая операция);- использовать команду New Action (Новая операция) меню палитры.


В обоих случаях на экран будет выведено диалоговое окно New Action (Новая операция), в котором можно присвоить имя макрокоманде (поле Name (Имя)), определить набор макрокоманд (раскрывающийся список Set (Набор)) и комбинацию клавиш для ее запуска (поле Function Key (Функциональная клавиша)), а также выбрать один из семи цветов для отображения имени макросы в палитре (список Color (Цвет)).



Затем нажать на кнопку Record (Запись), после чего точка на кнопке записив палитре Actions (Операции) станет красного цвета.


Теперь можно начинать выполнение команд, которые необходимо сохранить в макрокоманде. Если команда имеет диалоговое окно, то после установки нужных значений следует нажать на кнопку ОК. Если предполагается делать изменения настроек в процессе выполнения макросы, то можно оставить значения по умолчанию, но и в этом случае нажатие на кнопку ОК обязательно. При выходе из диалогового окна после нажатия на кнопку Cancel (Отменить) данная команда не записывается в макрокоманду.Остановка записи происходит при нажатии на кнопку Stop (Остановка) в нижней части палитры Actions (Операции).


ВСТАВКА ПУНКТОВ МЕНЮ


Многие команды, которые не записываются во время исполнения (например, параметры рисующих инструментов, команды просмотра и некоторые другие), можно включить в список макросы с помощью команды Insert Menu Item (Вставить пункт меню) меню палитры.


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


Для того чтобы вставить пункт меню в макрокоманду, необходимо определить место вставки в существующей макрокоманде: выделить имя макроса в списке палитры, выполнить команду Insert Menu Item (Вставить пункт меню), которая выведет на экран одноименное диалоговое окно, а затем открыть и выделить команду, ПОСЛЕ КОТОРОЙ будет осуществлена вставка новой команды.


После нажатия на кнопку ОК в списке макросов появляется новая команда.


ВСТАВКА ОСТАНОВОК


Во время выполнения макроса достаточно часто возникает необходимость прервать действие на какое-то время для того, чтобы осуществить действие, которое невозможно записать, например выделить фрагмент изображения или сделать штрих одним из рисующих инструментов.Продолжение работы макроса осуществляется нажатием на кнопку Play (Воспроизведение) в нижней части палитры.Чтобы не забыть о назначении паузы (остановки), рекомендуется сохранить для себя и потомков... короткое FAQ в поле Message (FAQ).


Для вставки остановки в список макросов необходимо выполнить одно из двух приведенных ниже действий:
определить место вставки остановки в существующей макрокоманде: выделить имя макроса в списке палитры, открыть и выделить команду, после которой будет вставка остановки;
выполнить команду Insert Stop (Вставить остановку) меню палитры, которая выводит на экран диалоговое окно Record Stop (Записать остановку), параметры этой команды также отображаются в палитре Actions (Операции).


В поле Message (FAQ) можно ввести произвольный текст, который будет выводиться при остановке макроса. При включении флажка Allow Continue (Разрешить продолжение) в диалоговом окнесообщении выводится кнопка Continue (Продолжить).


ВЫПОЛНЕНИЕ МАКРОКОМАНД


Выполнять последовательность действий макросов можно с любой команды и в произвольном сочетании (хотя и в одной последовательности).


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


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


ПРИМЕНЕНИЕ МАКРОКОМАНДЫ К ОТДЕЛЬНОМУ ДОКУМЕНТУ


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


Двойной щелчок на имени макроса в палитре выводит на экран диалоговое окно Actions Options (Параметры операции), которое идентично диалоговому окну New Action (Новая операция). Если же двойной щелчок выполнить при нажатой клавише, макрокоманда начинает выполнение от начала и до конца.


Следует иметь в виду, что поскольку макрокоманда - это последовательность команд (хотя минимально она может состоять из одной команды), выполнить отмену действия всей макрокоманды с использованием команды undo (отменить) нельзя. Команда undo (отменить) позволяет вернуться только на один шаг назад. ...увы, но это так..


Вместе с тем отменить действие макроса можно, если использовать возможности палитры History (История): выполнить "снимок" изображения до выполнения макроса и затем "вернуться" к нему.


СКОРОСТЬ ВЫПОЛНЕНИЯ ЭКШЕНА


Сложный экшен зачастую требует отладки, но в некоторых случаях не так легко определить место сбоя ввиду слишком быстрого выполнения конкретных команд. Если требуется этап отладки, то можно воспользоваться командой Playback Options (Режим выполнения) меню палитры. На экран выводится одноименное диалоговое окно, в котором можноопределить скорость выполнения макросы.


Оно содержит ряд параметров:
Переключатель Accelerated (Быстрое), включенный по умолчанию, обеспечивает нормальную скорость, которая вполне приемлема для правильно работающей макропрограммы.
Переключатель Step by Step (Пошаговое) обеспечивает выполнение макроса по шагам с прорисовкой изображения после каждой отдельной команды. Такой режим требует от пользователя достаточно напряженного внимания, чтобы успеть зафиксировать неверные действия.
Переключатель Pause For ... seconds (С остановками на... секунд) позволяет самому пользователю определить степень своего внимания и ввести время задержки в секундах между выполнением команд.
Флажок Pause For Audio Annotation (Пауза для звуковых комментариев)позволяет создать паузу для прослушивания звукового комментария.


РЕДАКТИРОВАНИЕ МАКРОКОМАНД


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


Непосредственно на панели Actions (Операции) можно перенести любую макрокоманду в другой набор. Для этого необходимо захватить строку макроса и перетащить ее в нужный набор.Таким же образом можно изменить порядок команд в макрокоманде.


Для записи дополнительной команды надо выделить команду, после которой необходима вставка, а затем, нажав на кнопку Record (Запись) в нижней части палитры, выполнить нужную команду или последовательность команд. Щелчок на кнопке Stop (Остановка) прекратит запись.


Предусмотренная в палитре Actions (Операции) возможность повторения команд и макрокоманд очень полезна для редактирования самих макрокоманд и создания на их базе новых макрокоманд.


Повторение команды или макроса можно осуществить одним из следующих способов:
при нажатой кнопке можно захватить и перетащить нужную команду или макрокоманду в новое положение в списке палитры;
можно выделить команду или макрокоманду и выполнить команду Duplicate (Повторить) меню палитры;
можно перетащить имя команды или макроса на кнопку New Action (Новая операция) в нижней части палитры. Для выделения нескольких команд необходимо использовать клавиши или.


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


В любой момент можно удалить макрокоманду целиком или произвольную отдельную команду, входящую в макрокоманду.Для этого в списке макрокоманд следует выделить нужную (точнее, ненужную) макрокоманду или команду и щелкнуть на кнопке Trash (Корзина)в нижней части палитры или выполнить команду Delete (Удалить) меню палитры. Как то, так и другое действие выведет на экран окно-запрос на удаление, и после некоторого раздумья можно будет нажать на кнопку ОК.


Команду или макрокоманду без запроса можно удалить щелчком на кнопке Trash (Корзина) при нажатой клавише.


После БОЛЕЕ ДОЛГОГО РАЗДУМЬЯ можно решиться на удаление всех макрокоманд. Для этого необходимо выполнить команду Clear Actions (Очистить палитру) меню палитры и подтвердить свое решение.Если все операции, созданные пользователем, становятся излишними, от них можно избавиться с помощью команды Reset Actions (Восстановить операции) меню палитры. Щелчок на кнопке Append (Добавить) в открывшемся диалоговом окне добавит в панель набор макрокоманд,поставляемых вместе с программой.



Поскольку нельзя бесконечно добавлять новые макросы, в программе предусмотрена возможность создания наборов (set) макрокоманд и сохранения их на диске в специальном файле с расширением.atn.


Это позволяет более рационально организовывать работу над различными проектами или разными типами изображений, а также передавать другим пользователям для обеспечения идентичной обработки изображений. Сохранять можно только наборы макрокоманд целиком, отдельные макросы или команды сохранять нельзя (если только они не составляют набор), новые макросы автоматически сохраняются в файле Actions Palette.psp (в папке WindowsApplication DataAdobePhotoshopCS2Adobe Photoshop Settings). При удалении этого файла (с целью восстановления исходных установок программы) будет удален и набор макрокоманд, поэтому вполне разумно заранее сохранить макросы в независимом файле.


Для того чтобы создать новый набор макрокоманд, необходимо выполнить команду New Set (Новый набор) меню палитры или нажать на кнопку Create New Set (Создать новый набор), расположенную в нижней части панели Actions (Операции). В обоих случаях на экран выводится диалоговое окно, в котором требуется ввести имя набора или принять предлагаемое программой.



Имя набора можно в любой момент изменить, вызвав это же диалоговое окно командой Set Options (Задать параметры).Для сохранения набора макрокоманд достаточно выделить необходимый набор и выполнить команду Save Actions (Сохранить операции) меню палитры. На экран будет выведено диалоговое окно Save (Сохранить), в котором можно присвоить имя набору макрокоманд (или оставить текущее) и определить папку для хранения.


Для замены текущего набора макрокоманд на ранее сохраненный необходимо выполнить команду Replace Actions (Заменить операции) меню палитры.Для загрузки нового набора макрокоманд, который добавится в конец списка текущих макрокоманд, надо выполнить команду Load Actions (Загрузить операции) меню палитры.В обоих случаях на экран выводится диалоговое окно Load (Загрузить), в котором можно выбрать файл с расширением.atn.
На заметку..


Самый ходовой способ добавления "экшенов" в фотошоп начиная с версии 7 и выше в среде дизайнеров очень прост, из какого либо окна Windows ПЕРЕТАСКИВАЕТСЯ файл с расширением.ATN в окно Фотошопа, на пустое место. Он сразу "готов к употреблению". Быстро и удобно.

Язык макросов является языком программирования, который позволяет реализовать задачи пользователя, выполняя необходимые действия над объектами Access и их элементами. Макрос — программа, состоящая из последовательности макрокоманд . Макрокоманда — это инструкция, ориентированная на выполнение определенного действия.

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

Язык макросов обеспечивает возможность выполнения большинства задач, не прибегая к программированию на Visual Basic. Макросы, являясь надстройкой над Visual Basic, обеспечивают пользователя средствами решения задач, не требующими знания детального программирования. Язык макросов является языком более высокого уровня, чем Visual Basic.

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

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

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

Конструирование макроса

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

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

Формирование макрокоманд в окне макроса

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

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

После ввода всех макрокоманд в макрос его надо сохранить, воспользовавшись командой меню Файл/Сохранить или кнопкой панели инструментов макроса.

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

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

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

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

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

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

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

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

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

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

Контрольные вопросы

  1. Чем отличаются макросы в Access от макросов в Word и Excel?
  2. Как организовать запуск макроса по некоторому событию?
  3. В чем сходство и различие между макросами и модулями в Access?
  4. Как получить справку о той или иной макрокоманде?
  5. Вывод каких сообщений в рассмотренном примере отключает макрокоманда ВыводНаЭкран?

Из этой лекции вы узнаете следующее:

  • для чего нужны макросы;
  • как создать и использовать макрос;
  • как экспортировать и импортировать макросы;
  • как обеспечить безопасность при работе с макросами.

9.1. Что такое макросы и зачем они нужны

У каждого опытного пользователя интерфейс Microsoft Word уникальный и изменяется в зависимости от того, какие инструменты ему необходимы в работе. Вы вряд ли увидите одинаковые панели инструментов или пункты главного меню - чтобы сделать работу наиболее удобной, каждый пользователь стремится настроить программу по-своему. Однако иногда изменения только интерфейса (вынесение основных команд на панель инструментов и создание пользовательских меню ) недостаточно.

Если работа однообразная, то пользователю приходится часто повторять те или иные команды в определенной последовательности (например, оформлять текст курсивом, кеглем 10, гарнитурой Arial). Чтобы произвести такое небольшое форматирование , может понадобиться достаточно большое количество времени, особенно если таким образом необходимо выделить несколько десятков слов. Получается, что для каждого участка нужно проделывать несколько операций. Конечно, можно отформатировать только один участок и создать пользовательский стиль, но и это не самый быстрый способ применения оформления.

Если вам часто приходится выполнять одни и те же действия, то эффективность вашей работы можно заметно увеличить при помощи макросов. Макросы - это небольшие программы на языке Visual Basic . Они могут помочь не только в ситуациях, когда требуется много раз выполнить сложное форматирование , но и при вставке объектов, печати выделенного текста и в других случаях.

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

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

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

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

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

Назначение макроса кнопке

Если вам будет удобно вызывать макрос с панели быстрого запуска, то нажмите кнопку кнопке в области Назначить макрос . В появившемся диалоговом окне Параметры Word сделайте следующее.


Назначение макроса клавишам

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


Запись макроса

Когда подготовительная работа будет завершена, переходите к записи макроса. После того как вы закроете окна назначения макроса панели инструментов или клавишам, указатель мыши примет форму. Теперь можно выполнять необходимые действия.

Упражнение 9.1. Запись макроса

Создадим макрос, с помощью которого можно щелчком мышью применить к выделенному участку текста гарнитуру Arial, полужирное начертание и размер шрифта 10.

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


Теперь можно проверить его действие. Откройте любой документ, выделите требуемый участок и вызовите макрос с помощью кнопки на панели быстрого запуска или сочетания клавиш. Вы увидите, что форматировать текст, используя макрос, гораздо удобнее, чем каким-либо другим способом.

Изменением порядка команд в списке палитры можно менять и последовательность выполнения команд. Кроме того, команды одной макрокоманды можно перемещать в другие.

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

Изменение параметров макрокоманд

При своем создании макрокоманда получает имя и цвет, которым она отображается в режиме командных кнопок, а также комбинацию клавиш. При необходимости в любой момент эти параметры можно изменить с помощью команды Action Options (Параметры операции), которая выводит на экран диалоговое окно, идентичное окну New Action (Новая операция), описание которого приводится в следующем разделе.

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

Создание макрокоманды (action ) заключается в том, что во время выполнения той или иной последовательности команд программа Adobe Illustrator записывает их в том же порядке, включая и те параметры, которые использовались каждой конкретной командой.

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

Разработка подобных макрокоманд открывает широкие возможности пользователям для приложения своих творческих сил. По назначению результат близок к модулям plug-in, но создается легче и не требует специальных знаний.

Однако существуют и ограничения: некоторые команды и функции могут включаться в макрокоманды только с помощью записи (recording ). Для включения в операцию команд, которые не могут быть записаны во время записи, следует использовать команду Insert Menu Item (Вставить пункт меню). Информацию об этом см. в следующем разделе данного приложения.

Совет
Следует обратить внимание еще на одно очень существенное ограничение. Успех выполнения записанной макрокоманды с другим документом и в другое время в значительной степени зависит от параметров другого документа (цветовой модели, выделенного объекта, активного слоя и т. д.), а также от текущих установок программы (например, цветов заливки и обводки и некоторых других)
.

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

Совет
Следует также иметь в виду, что при использовании в качестве элементов макрокоманды команд Save As (Сохранить как) или Save a Copy (Сохранить копию) в диалоговых окнах этих команд не нужно вводить конкретные имена файлов
.

Рис. П1.3 . Пример записи нескольких действий в макрокоманду


Рис. П1.4 . Диалоговое окно New Action

Итак, для того чтобы создать макрокоманду методом записи (recording ), необходимо открыть редактируемый документ, вывести на экран палитру Actions (Операции), выбрать в ней набор макрокоманд и выполнить одно из двух действий:

В обоих случаях на экран будет выведено диалоговое окно New Action (Новая операция) (рис. П1.4), в котором можно присвоить имя макрокоманде (поле Name (Имя)), определить набор макрокоманд (список Set (Набор)) и комбинацию клавиш для ее запуска (поле Function Key (Функциональная клавиша)), выбрать один из семи цветов для отображения строки макрокоманды в палитре (список Color (Цвет)).

Затем следует нажать кнопку Begin Record (Запись), после чего точка на этой кнопке станет красного цвета.

Теперь можно начинать выполнение команд, которые необходимо сохранить в макрокоманде. Если команда имеет диалоговое окно, то после установки необходимых значений, следует нажать кнопку ОК . Если предполагается делать изменения настроек в процессе выполнения макрокоманды, можно оставить значения по умолчанию, но и в этом случае следует обязательно нажать кнопку ОК . При выходе из диалогового окна по нажатии кнопки Cancel (Oтменить) данная команда не записывается в макрокоманду.

Остановка записи Происходит при нажатий на кнопку Stop Playing/Recording (Остановка выполнения/записи) в нижней части палитры Actions (Операции) (первая слева).

Цель работы: Изучение возможностей использования макросов для автоматизации в процессе создания больших документов.

Контрольные вопросы для самоконтроля при изучении темы:

  1. Что такое макрос?
  2. Когда имеет смысл создавать макросы?
  3. Для каких целей используют макросы?
  4. В каких приложениях MS Office можно создавать макросы, посредством автоматической записи выполняемых пользователем инструкций?
  5. Как быстро открыть диалоговое окно «макрос»?
  6. Какой язык используется при разработке макросов?
  7. Где сохраняется последовательность инструкций записанных в виде макроса?
  8. Как можно запустить на выполнение макрос?
  9. Какой редактор используется при редактировании/ создании макроса?

Задание:

  1. Откройте любой текстовый файл, созданный в предыдущих работах.
  2. Напишите макрос, позволяющий установить жирное начертание шрифта в 14 пунктов для части текстовой строки. Назовите макрос жирн14. При записи макроса назначьте комбинацию СТRL+ SHIFT+Ж.
  3. выделите в письме обращение «Уважаемый господин …» и примените к нему созданный макрос, используя комбинацию клавиш.
  4. Включите этот же макрос в пункт меню Сервис , расположив его под разделительной чертой внизу (Сервис " Настройка ). Просмотрите текст макроса на языке Visual Basic, составленный Word: Сервис " Макрос"кнопка Изменить"имя макроса.
  5. Включите этот же макрос в ПИ, причем на основе собственного рисунка. Для этого воспользуйтесь командой Изменить в контекстном меню на созданной кнопке.
  6. Напишите макрокоманду, которая позволяет копировать абзац текста в начало текущего документа (для этого нужно выделить абзац с помощью тройного нажатия клавиши F8). Назначьте для макроса клавиатурную комбинацию, пиктографический инструмент и внесите в меню по своему усмотрению. Проверьте все варианты назначения.
  7. Напишите макрокоманду, которая восстанавливает окно приложений до нормального размера. Обеспечьте выполнение макрокоманды с использованием клавиатурной комбинации. Проверьте созданную команду.
  8. Напишите макрос для удаления слова (выделив его нажатием 2 раза на F8), без помещения его в буфер обмена (клавиша DEL). Свяжите его с пиктограммой. Проверьте и удалите её. Для этого переместите её (в режиме Настройка ) с помощью мыши за пределы ПИ.
  9. Создайте пару макросов для переключения между синим и белым фоном окна (синий фон снижает нагрузку на зрение, но на нем не всегда хорошо видны некоторые объекты). Эта настройка осуществляется командами Сервис" Параметры" вкладка Общие " флажок Белый текст на синем фоне.
  10. Сохраните результаты в файле.

Методические указания:

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

Макросы часто используются для следующих целей:

· для ускорения часто выполняемых операций редактировании или форматирования;

· для объединения нескольких команд, например, для вставки таблицы с указанными размерами и границами и определенным числом строк и столбцов;

· для упрощения доступа к параметрам в диалоговых окнах;

· для автоматизации обработки сложных последовательных действий в задачах.

Макросы имеют имя и равноправны с другими командами Word.

Макрос можно создать двумя способами:

· записать последовательность действий на макрорекодер;

· создать программу на Visual Basic.

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

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

Если макрос вызывает команду Правка " Найти/Заменить , нажмите кнопку Больше , а затем выберите параметр Везде в списке Направление . Если макрос выполняет поиск только вперед или назад, то по достижении конца или начала документа Word приостановит выполнение макроса и предложит продолжить поиск в оставшейся части документа.

Перед использованием макроса, записанного в другом документе, убедитесь, что он не зависит от содержимого этого документа.

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

Средство записи макросов позволяет быстро создавать макросы с минимальными усилиями. При этом макрос записывается в виде последовательности инструкций на языке программирования Visual Basic для приложений. Допускается применение мыши для выбора команд и параметров. Но действия, проделанные в окне документа с помощью мыши, не записываются. Например, с помощью мыши нельзя перемещать курсор, копировать и перемещать объекты, в том числе перетаскиванием. Для записи этих действий используйте клавиатуру. Запись макроса можно временно приостанавливать и затем продолжать с того места, где запись была остановлена.

Запись макроса.

· Двойной щелчок по индикатору ЗАП в строке состояния;

· Сервис " Макрос "Начать запись. На экране появится диалоговое окно команды.

· В поле «Имя»ввести уникальное имя.

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

· В поле «Описание» полезно задать описание команды и поясняющие комментарии.

· Если макросу не требуется назначить кнопку панели инструментов, команду меню или сочетание клавиш, нажать кнопку ОК, чтобы начать запись макроса.

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

· Нажмите кнопку Закрыть, чтобы начать запись макроса.

· Приступить к записи макроса. Все действия, выполняемые пользователем, протоколируются. Приостановка записи макроса - кнопка Пауза (выполните действия, которые не должны быть записаны). Для возобновления записи нажмите кнопку Возобновите запись .

· Для завершения записи – кнопка Остановить запись.

Хранение макросов.

Макросы хранятся в шаблонах или документах. По умолчанию макросы сохраняются в шаблоне Normal/dot, чтобы они были доступны всем документам Word. Если макрос будет использоваться только в одном документе, сохраните его в документе. Отдельные макросы в документе хранятся в проектах макросов, которые можно копировать из одного документа в другой. для копирования, удаления или переименования проекта макросов: Сервис " Макрос"Макросы"Организатор.

Макрокоманда сохраняется вместе с шаблоном документа, в котором она записана. Для добавления макрокоманды из другого шаблона следует использовать команду Файл" Шаблоны" кнопка Организатор . Сохранение изменений: Файл " Сохранить все.

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

Например, макрос FileClose связан с командой Файл" Закрыть. Если назвать новый макрос FileClose, то он будет связан с командой Закрыть, и при выборе команды Закрыть будет выполняться новая последовательность действий. Чтобы просмотреть список встроенных макросов Word, выберите команду Сервис " Макрос"Макросы. В списке Макросы из выберите Команд Word.

Воспроизведение макроса

Воспроизвести макрос можно несколькими способами:

  1. Сервис " Макрос"Макросы"имя макроса" Выполнить.
  2. С помощью клавиатурной комбинации (если она была назначена в процессе записи макроса). Процедура назначения клавиатурной комбинации (если она была назначена) следующая:

· Сервис " Настройка" вкладка Клавиатура;

· в поле «Категории» выбрать Макросы" имя макроса. Если клавиши были назначены, то их сочетание будет показано в поле «Текущие сочетания клавиш ». При отсутствии назначения или при желании дать новое в поле «Новое сочетание клавиш » следует ввести новую комбинацию, просто нажав на эти клавиши;

· нажать последовательно кнопки Назначить и Закрыть .

III. С помощью ПИ (если макрос связан с кнопкой ПИ).

Процедура назначения инструмента в виде пиктограммы может быть выполнена командой Сервис " Настройка. После выбора имени макроса его следует перетащить мышью на предполагаемое место расположения в пиктографическом меню. Существующие инструменты сдвигаются. Вызвав контекстное меню на кнопке макроса, можно придать кнопке нужный вид.

IV. С помощью поля-кнопки Macrobutton . Поле Macrobutton позволяет запустить макрос прямо из документа. Двойной щелчок по этой кнопке запускает макрос, указанный в инструкции этого поля. Инструкция выглядит так:

{Имя поля Имя макроса Инструкции }

Вставка поля Macrobutton осуществляется командами Вставка " Поле" категория Автоматизация документа" поле Macrobutton или сочетание клавиш.