Московский государственный технический университет им. Н.Э. Баумана
Опубликован: 09.10.2009 | Доступ: свободный | Студентов: 6914 / 1934 | Оценка: 4.48 / 4.23 | Длительность: 26:31:00
Специальности: Менеджер
Лекция 23:

Безопасность и макросы

Автоматизация работы с использованием макросов

Уровень 2. О макросах

Макрос - это набор команд (инструкций), написанных на языке Microsoft Visual Basic, задающих и автоматически выполняющих определенную последовательность действий в документе Microsoft Word. Это могут быть действия по вводу, обработке и оформлению данных, действия с листами, действия с диаграммами и графическими объектами и т. д. Любые действия, которые может выполнить пользователь, можно автоматизировать с помощью макроса.

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

Типичной задачей, решаемой, например, с использованием макроса, является преобразование и оформление web-страниц, сохраненных из Интернета.

Проблема заключается в том, что web-страницы Интернета содержат много элементов, мешающих работе в документе Word. Это и многочисленные вложенные друг в друга таблицы, это и разрывы строки вместо конца абзаца, неразрывные пробелы, графические элементы, разрывы полей форм и т.д.

Каждую из этих задач можно решить с использованием традиционных средств Microsoft Word. Можно заменить точки запятыми. Можно установить необходимые форматы. Но все это требует значительных затрат времени.

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

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

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

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

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

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

Подготовка к созданию

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

Например, необходимо преобразовать в удобный для работы вид документ, сохраненный из Интернета ( рис. 8.26).

Исходный документ (в режиме отображения непечатаемых знаков)

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

Необходимо привести документ к виду, удобному для работы с ним средствами Word ( рис. 8.27).

Преобразованный документ таблица

увеличить изображение
Рис. 8.27. Преобразованный документ таблица

Можно составить, например, такой план.

  • Преобразовать таблицы в текст.
  • Удалить все графические объекты.
  • Заменить разрывы строки знаками конца абзаца.
  • Удалить пустые абзацы.
  • Удалить лишние пробелы.
  • Удалить фон.
  • Удалить скрытый текст.
  • Заменить прямые кавычки на парные.
  • Установить оформление текста единым шрифтом.
  • Установить одинаковый отступ абзацев от левого поля.
  • Установить режим отображения документа Разметка страницы.
  • Сохранить документ как файл Word.
Запись макроса

Для работы с макросами используют вкладку Разработчик.

  • В группе Код вкладки Разработчик нажмите кнопку Запись макроса. Можно также нажать кнопку в строке состояния ( рис. 8.28) или воспользоваться группой Макросы вкладки Вид ( рис. 8.29).
    Запуск записи макроса

    увеличить изображение
    Рис. 8.28. Запуск записи макроса
    Запуск записи макроса

    увеличить изображение
    Рис. 8.29. Запуск записи макроса
  • В окне Запись макроса ( рис. 8.30) в поле Имя макроса укажите имя создаваемого макроса. Имя макроса может содержать буквы и цифры, но не может начинаться с цифры, не может содержать пробелы и любые знаки, кроме знака подчеркивания. В одном файле или шаблоне не может быть макросов с одинаковыми именами. Удобно присваивать макросу описательное имя, по которому можно определить его назначение.
    Начало записи макроса

    Рис. 8.30. Начало записи макроса
  • В раскрывающемся списке Макрос доступен для следует выбрать файл или шаблон, в который будет сохранен макрос. Если макрос предполагается использовать неоднократно в различных документах, то нужно выбрать параметр Всех документов (Normal.dotm).
  • В поле Описание можно ввести описательные сведения о создаваемом макросе, которые могут помочь пользователям в выборе решения по поводу применения этого макроса, указать имя автора создаваемого макроса и дату создания.
  • После установки всех параметров создаваемого макроса в окне Запись макроса (см. рис. 8.30) нажмите кнопку ОК.
  • Перед началом записи макроса для удобства его последующего использования можно создать кнопку панели инструментов (кнопка кнопке ) и/или назначить сочетание клавиш клавиатуры, которым будет запускаться макрос (кнопка клавишам ). После создания кнопки или назначения сочетания клавиш запись начинается автоматически.

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

При записи макроса в группе Код вкладки Разработчик отображается кнопка Остановить запись. Такая же кнопка отображается в строке состояния( рис. 8.31).

Режим записи макроса

увеличить изображение
Рис. 8.31. Режим записи макроса

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

По окончании выполнения всех запланированных действий для прекращения записи макроса нажмите кнопку Остановить запись в группе Код вкладки Разработчик или эту же кнопку в строке состояния (см. рис. 8.31). При необходимости можно пользоваться кнопкой Пауза панели инструментов Остановить запись (см. рис. 8.31).

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