Автоматизация рутины в Microsoft Word через макросы

Иван Корнев·02.05.2026·6 мин

Макросы в Word — это инструменты автоматизации на языке VBA, которые позволяют выполнять сложные действия (форматирование, расчеты, изменение структуры) одним кликом. Чтобы начать работу, необходимо включить вкладку «Разработчик» в настройках ленты и разрешить выполнение макросов в Центре управления безопасностью, выбрав режим «Отключать все макросы с уведомлением».

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

Оглавление

Настройка среды: включение вкладки «Разработчик»

По умолчанию инструменты для работы с макросами скрыты. Чтобы получить к ним доступ в Windows и macOS, выполните следующие действия.

Для Windows

  1. Нажмите ФайлПараметры.
  2. Перейдите в раздел Настроить ленту.
  3. В правом столбце («Основные вкладки») поставьте галочку напротив пункта Разработчик.
  4. Нажмите ОК. Теперь на ленте появилась новая вкладка с кнопками «Запись макроса», «Visual Basic» и «Безопасность макросов».

Для macOS

  1. Откройте меню WordНастройки (или предпочтения).
  2. Выберите пункт Лента и панель инструментов.
  3. В списке основных вкладок отметьте Разработчик.
  4. Закройте окно настроек. Вкладка появится на главной панели инструментов.

Уровни безопасности: как правильно включить макросы

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

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

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

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

Добавление надежных расположений

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

  1. ФайлПараметрыЦентр управления безопасностьюПараметры центра....
  2. Раздел Надежные расположения.
  3. Нажмите Добавить новое расположение и укажите путь к папке с вашими документами.

Создание первого макроса: запись и редактирование

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

Шаг 1: Запись действий

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

  1. На вкладке Разработчик нажмите Запись макроса.
  2. В диалоговом окне:
    • Имя макроса: используйте латиницу, без пробелов (например, FormatBlueBold).
    • Хранить в: выберите Все документы (Normal.dotm), если хотите использовать макрос в любом файле, или Текущий документ, если он нужен только здесь.
    • Назначить макрос кнопке или клавише: удобно для быстрого вызова.
  3. Нажмите ОК. Индикатор записи (квадратик на строке состояния) начнет мигать.
  4. Выполните нужные действия с текстом: выделите его, нажмите Ж (Bold), измените цвет шрифта, добавьте границу.
  5. Нажмите кнопку Остановить запись на вкладке «Разработчик».

Шаг 2: Просмотр и правка кода

Чтобы увидеть, что именно записал Word:

  1. Нажмите Макросы → выберите ваш макрос → Изменить.
  2. Откроется редактор Visual Basic for Applications (VBA).

Вы увидите код вроде этого:

Sub FormatBlueBold()
    Selection.Font.Bold = wdToggle
    Selection.Font.Color = RGB(0, 0, 255)
    Selection.Borders.Enable = True
End Sub

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

Шаг 3: Сохранение файла

Обычные документы .docx не сохраняют макросы. Чтобы код сохранился, файл нужно сохранить в формате Документ Word с поддержкой макросов (.docm) или Шаблон Word с поддержкой макросов (.dotm).

Безопасное использование и защита от угроз

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

Правила гигиены

  1. Проверяйте источник. Не включайте макросы в файлах, полученных от незнакомых отправителей, даже если письмо выглядит официальным (счет, накладная, резюме).
  2. Отключайте макросы в интернете. В новых версиях Word (2022+) файлы, скачанные из интернета, блокируются по умолчанию. Не снимайте эту блокировку через свойства файла, если не уверены в источнике на 100%.
  3. Используйте антивирус. Современные антивирусы умеют сканировать VBA-код внутри документов.
  4. Резервное копирование. Перед запуском сложного макроса, который изменяет весь документ, сохраните копию файла. Ошибочный скрипт может удалить содержимое за секунды.

Цифровая подпись

Для корпоративного использования рекомендуется подписывать макросы цифровым сертификатом. Это гарантирует, что код не был изменен после создания автором. Пользователи могут настроить Word так, чтобы он запускал только подписанные макросы.

Частые ошибки при работе с VBA

  1. Сохранение в неправильном формате. Ошибка: Пользователь пишет макрос, сохраняет файл как .docx и закрывает его. Код теряется. Решение: Всегда используйте .docm или .dotm.

  2. Отсутствие обработки ошибок. Ошибка: Макрос пытается обратиться к несуществующему объекту (например, к таблице, которой нет в документе), и Word «вылетает» или зависает. Решение: Добавляйте конструкцию On Error Resume Next (для простых случаев) или полноценную обработку ошибок On Error GoTo ErrorHandler.

  3. Использование Selection вместо объектов. Ошибка: Запись макроса через Selection делает код медленным и зависимым от того, что выделено мышкой в данный момент. Решение: Изучайте работу с объектами Range, Document, Paragraph. Это делает макросы стабильнее и быстрее.

  4. Конфликт имен. Ошибка: Названия макросов совпадают с зарезервированными словами VBA или другими макросами в глобальном шаблоне. Решение: Давайте уникальные имена, например, MyCompany_FormatHeader.

FAQ: ответы на популярные вопросы

Почему вкладка «Разработчик» пропала? Скорее всего, сбросились настройки ленты или обновился Office. Зайдите в ФайлПараметрыНастроить ленту и включите её снова.

Можно ли удалить вирус из макроса? Если макрос уже выполнился, антивирус может удалить вредоносный код, но повреждения документу уже могут быть нанесены. Лучше предотвратить запуск: отключите макросы и удалите файл. Для очистки легального документа от подозрительного кода можно скопировать весь текст (кроме последнего абзаца) в новый чистый файл .docx.

Работают ли макросы в Word Online (веб-версия)? Нет. Классические макросы VBA не поддерживаются в браузерной версии Word. Однако там доступна платформа Office Scripts (на TypeScript), которая работает аналогично, но требует другой синтаксис и подписки Microsoft 365.

Как передать макрос коллеге? Отправьте файл в формате .docm или .dotm. Предупредите коллегу, что при открытии файла ему нужно будет разрешить выполнение макросов во всплывающем окне.