Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум по информатике.doc
Скачиваний:
94
Добавлен:
17.02.2016
Размер:
12.78 Mб
Скачать

Упражнение 3. Пример создания и выполнения макроса

Пусть у нас имеется расчетно-платежная ведомость. Необходимо достаточно часто преобразовывать эту исходную таблицу в платежную ведомость. Чтобы получить из расчетно-платежной ведомости платежную ведомость, следует выполнить следующие действия:

  • поместить табличный курсор в ячейку А1 (рисунок 8);

  • начать запись макроса (см. запись макроса);

  • изменить заголовок таблицы;

  • скрыть вторую строку;

  • скрыть столбцы C, D, E, F;

  • ввести дополнительный столбец для росписи в получении денег;

  • предусмотреть место для подписей директора и главного бухгалтера;

  • закончить запись макроса.

Рис. 24 Исходная таблица для создания макроса

Текст макроса будет записан на дополнительном рабочем листе (по умолчанию в конце текущей рабочей книги).

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

Самостоятельное задание.

Создайте макрос для возврата от модифицированной таблицы к исходной.

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

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

Рис. 25 Модифицированная таблица, полученная в результате

Выполнения макроса макросы в worDе

Основное назначение макросов в WORDе - избавить пользователя от многократного повторения однообразных действий. Однако есть серьезный недостаток - с макросами могут распространяться вирусы. Поэтому для защиты от макровирусов, работая с WORD XP, выберите меню Сервис\Макрос\Безопасность, отметьте закладку Уровень безопасности и задайте опцию Высокая или Средняя (обычо выбирают Средняя, так как Высокая может автоматически не пропускать макросы, содержащиеся в документе, без сообщения об этом.) После этого нажмите OK.

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

  1. Записать последовательность выполняемых команд и нажатий клавиш с помощью встроенного средства записи Сервис|Макрос|Начать запись или сделать двойной щелчок мыши на надписи ЗАП в полосе состояния.

  2. Выбрать команду Сервис|Макрос|Макросы|Создать и написать программу на языке программирования WordBasic

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

Макросу могут быть присвоены кнопка на панели инструментов, пункт меню или комбинация клавиш.

Процесс записи макроса рассмотрим на примере.

Упражнение 4.

Создайте макрокоманду, обеспечивающую запуск программы Paint, для подготовки и вставки в документ иллюстрации.

  1. Выбрать Сервис|Макрос|Начать запись или дважды щелкнуть на надписи ЗАП в полосе состояния.

  2. В появившемся диалоговом окне Запись макроса введите:

  • Имя макроса (по умолчанию Word присваивает макросу имя Макрос№, где № - порядковый номер макроса). Имя макроса должно иметь длину до 80 символов, начинаться с буквы и содержать только буквы и цифры. Имя не должно содержать пробелы.

  • Описание макроса в поле Описание, чтобы впоследствии легко вспомнить, для чего был создан данный макрос.

  • В поле Макрос доступен для укажите, в каком шаблоне будет храниться этот макрос:

«Обычный» – тогда макрос будет доступен для всех документов.

«Специальный шаблон» - тогда макрос будет доступен только для документов, основанных на этом шаблоне.

  1. После того как вы нажмете кнопку OK, на экране появится панель инструментов Запись макроса. В строке состояния активизируется надпись ЗАП, которая означает, что включено записывающее устройство.

  1. Чтобы вставить рисунок выберите из меню Вставка|Объект, в открывшемся диалоговом окне, в списке Тип объекта выделите строку Точечный рисунок и OK. В результате этих действий запускается программа Paint. На этом действие, выполняемое макрокомандой, должно быть завершено. Чтобы остановить запись макрокоманды надо свернуть окно программы Paint и щелкнуть на кнопке Остановить запись.

  2. Закончив работу над макросом, обязательно протестируйте его. Сервис|Макрос|Макросы. Из списка имен выберите нужной макрокоманды и нажмите кнопку Выполнить.

Упражнение 5.

Создайте макрокоманду, обеспечивающую стирание текста от курсора вставки до конца абзаца и назначение макросу комбинации клавиш.

  1. Поместите курсор вставки в произвольную точку любого абзаца.

  2. Сделайте двойной щелчок мыши на записи ЗАП в строке состояния.

  3. В появившемся диалоговом окне в строке Имя макроса введите – Стирание

  4. В поле Описание введите описание действия, которое будет выполнять макрос: «Стирание конца абзаца от позиции курсора вставки».

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

  6. В поле Новое сочетание клавиш, нажмите комбинацию клавиш Ctrl+Del.

  7. Щелкните по кнопке Назначить

  8. Щелкните по кнопке Закрыть, чтобы начать запись макроса.

На экране отобразится панель инструментов Запись макроса, и теперь с помощью клавиатуры в окне документа выполните следующие действия:

  1. Выделите абзац до конца, нажав комбинацию клавиш Ctrl+Shift+↓.

  2. Нажмите клавишу Del.

  3. Щелкните мышью по кнопке Остановить запись на панели инструментов Запись макроса.

Теперь, чтобы стереть абзац до конца, вам нужно будет установить курсор вставки в нужную позицию и нажать Ctrl+Del.

Упражнение 6.

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

  1. Создайте таблицу (или вызовите уже имеющуюся таблицу в вашем документе).

Фамилия И.О.

Оклад

Иванов А.Т.

15000

Ахметов А.А.

15000

Алексеев И.Р.

13000

Тян И.Л.

14000

Борисова А.П.

12000

  1. Создайте макрос с именем Сортировка, который отсортирует вашу таблицу по полю Фамилия И.О.. Для этого обратитесь в меню Сервис/Макрос/Начать запись. Когда управление возвратится в окно Word, обязательно поместите курсор, с помощью клавиатуры внутри таблицы, которую собираетесь сортировать, затем вызовите команду Таблица/Сортировка….

Закончить запись макроса командой Остановить запись.

  1. Поместите курсор вставки в первую ячейку таблицы, откуда желаете отсортировать и нажмите Ctrl+F9. В точку вставки будут вставлены символы поля {}.

  2. Введите MACROBUTTONпробел и Сортировка (имя вашего макроса).

  3. Нажмите клавишу и введите Нажмите кнопку для сортировки (это содержимое поля).

  4. Можно ввести и с помощью меню эту команду (заменяет 3 и 4 пункты данного алгоритма). Для этого поместив курсор в начало строки, перед фамилией, вызовите меню Вставка/Поле/Автоматизация документа/Параметры…. Найдите макрос с именем Сортировка из списка (если в конце списка, воспользуйтесь клавишей Ctrl+End) и щелкните по кнопке Добавить

НажмитеФамилия И.О.

Оклад

Иванов А.Т.

15000

Ахметов А.А.

15000

Алексеев И.Р.

13000

Тян И.Л.

14000

Борисова А.П.

12000

  1. Нажмите Shift+F9. Теперь на экране будет отображаться только содержимое поля: Нажмите кнопку для сортировки

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

  3. Выберите команду Формат/Границы и заливка

  4. На вкладке Границы выберите обрамление, например синего цвета, толщиной 1,5 пункта, с тенью

  5. На вкладке Заливка выберите узор заливки 20%.

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

НажмитеФамилия И.О.

Оклад

Алексеев И.Р.

13000

Ахметов А.А.

15000

Борисова А.П.

12000

Иванов А.Т.

15000

Тян И.Л.

14000

Владимиров С.Ю.

5000

Савельев М.М.

10000

  1. Эту кнопку можно перенести в любое место обычным перетаскиванием

Фамилия И.О.

Оклад

Алексеев И.Р.

13000

Ахметов А.А.

15000

Борисова А.П.

12000

Владимиров С.Ю.

5000

Иванов А.Т.

15000

Савельев М.М.

10000

Тян И.Л.

14000

Нажмите