Гид по технологиям

Запись макроса в Excel: полное пошаговое руководство

9 min read Excel Обновлено 13 Apr 2026
Запись макроса в Excel — пошагово
Запись макроса в Excel — пошагово

логотип Excel с иконками шестерёнок на фоне таблицы

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

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

Что нужно знать в двух строках

Макросы сохраняются как VBA-код. Храните часто используемые макросы в персональной книге PERSONAL.XLSB, чтобы они были доступны во всех сеансах Excel. Никогда не выполняйте макросы из ненадёжных источников — в них может быть вредоносный код.

Быстрая карта процесса

  1. Включить вкладку «Разработчик». 2. Нажать «Запись макроса». 3. Задать имя и сочетание клавиш. 4. Выбрать место хранения. 5. Выполнить действия. 6. Остановить запись. 7. Тестировать и при необходимости отредактировать в редакторе VBA.

Как записать макрос в Excel — пошагово

1. Включите вкладку «Разработчик» (Developer)

Вкладка «Разработчик» содержит все инструменты для записи и управления макросами. Она не включена по умолчанию.

  1. Откройте «Файл» > «Параметры». 2. Выберите «Настроить ленту». 3. В правой колонке (Основные вкладки) отметьте «Разработчик» и нажмите «ОК».

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

Вкладка останется видимой до тех пор, пока вы не снимете флажок в тех же параметрах.

2. Нажмите «Запись макроса» (Record Macro)

На вкладке «Разработчик» в группе «Код» нажмите «Запись макроса». Откроется диалоговое окно, где нужно ввести параметры макроса.

Кнопка Запись макроса на вкладке Разработчик

Альтернативно используйте сочетание клавиш Alt + T + M + R, чтобы открыть диалог записи.

3. Введите имя макроса

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

Диалог ввода имени макроса в Excel

Примеры хороших имён: FormatReport_2026, ImportCSV_Sales, ClearTempData.

Правила синтаксиса имени макроса в Excel

4. Назначьте сочетание клавиш

Кликните в поле «Сочетание клавиш» и нажмите желаемую букву. По умолчанию сочетание идёт вместе с Ctrl. Чтобы избежать перезаписывания стандартных сочетаний, выбирайте Ctrl+Shift+буква.

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

Например, используйте Ctrl+Shift+R для макроса форматирования отчёта. Если назначить Ctrl+A, вы потеряете стандартную функцию «Выделить всё».

5. Выберите, где хранить макрос

Поле «Сохранить макрос в» определяет область видимости макроса:

  • Personal Macro Workbook — макрос будет доступен в любых книгах Excel. Макросы сохраняются в скрытой книге PERSONAL.XLSB.
  • New Workbook — макрос сохранится в новой книге, открытой в текущем сеансе.
  • This Workbook — макрос доступен только в текущей книге.

Выбор места хранения макроса в Excel

6. Описание макроса

В поле «Описание» опишите назначение макроса, ограничения и предположения (например, «работает на листе с именем Отчёт и ожидает диапазон A1:D100»).

Ввод описания для макроса Excel

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

7. Нажмите «ОК» и начните запись

После нажатия «ОК» Excel начнёт записывать ваши действия в виде VBA-кода. Всё, что вы будете делать: ввод текста, форматирование, сортировки, вставка формул — будет фиксироваться.

8. Выполните действия макроса

Выполните те же шаги, которые хотите автоматизировать: выбрать диапазон, применить формат, скопировать/вставить, импортировать данные.

Совет: заранее прорисуйте последовательность действий на бумаге или в заметке. Это уменьшит ошибки при записи.

Опция «Использовать относительные ссылки» на вкладке «Разработчик» переключает запись между абсолютными и относительными действиями. При включённых относительных ссылках Excel записывает смещения относительно активной ячейки, а не абсолютные адреса.

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

Опция Использовать относительные ссылки на вкладке Разработчик

Пример поведения: при записи перехода с A1 на A3 и при включённых относительных ссылках повторный запуск из J6 приведёт курсор в J8.

9. Остановите запись

Когда все шаги выполнены, на вкладке «Разработчик» нажмите «Остановить запись» в группе «Код».

Кнопка Остановить запись макроса

Альтернативно используйте Alt + T + M + R, чтобы остановить запись. Макрос готов к использованию.

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

  • Запуск: Вкладка «Разработчик» > «Макросы» или Alt + F8. Выберите макрос и нажмите «Выполнить».
  • Редактирование: В окне «Макросы» нажмите «Изменить», чтобы открыть редактор VBA (Alt + F11).
  • Удаление: В окне «Макросы» выберите макрос и нажмите «Удалить».

Проблема: нельзя редактировать макрос в скрытой книге

Если макрос хранится в PERSONAL.XLSB, при попытке редактировать вы можете получить ошибку: «Невозможно редактировать макрос в скрытой книге». Это значит, что персональная книга скрыта.

Ошибка редактирования макроса из скрытой книги

Чтобы открыть персональную книгу: вкладка «Вид» > «Отобразить» > выберите PERSONAL.XLSB и нажмите «ОК». После этого вы можете редактировать или удалять макрос.

Окно Отобразить окна в Excel для снятия скрытия PERSONAL.XLSB

Пример: макрос для быстрого форматирования отчёта

Задача: привести диапазон A1:D100 к стандартному виду — заголовки полужирные, автоширина столбцов, формат даты в столбце C.

Шаги при записи:

  1. Выделите A1:D100. 2. На вкладке «Главная» выберите жирный шрифт для первой строки. 3. Дважды кликните границы столбцов для автоширины. 4. Выделите столбец C и примените формат даты «дд.мм.гггг». 5. Нажмите «Остановить запись».

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

Пример простого VBA‑фрагмента (редактирование через Alt + F11):

Sub FormatReport_Example()
    Dim ws As Worksheet
    Set ws = ActiveSheet
    With ws
        .Range("A1:D100").Font.Bold = False
        .Range("A1:D1").Font.Bold = True
        .Columns("A:D").AutoFit
        .Columns("C").NumberFormat = "dd.mm.yyyy"
    End With
End Sub

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

Лучшие практики и правила именования

  • Имена: используйте префиксы по функции, например: fmt_Report, imp_CSV, clr_Temp.
  • Документация: заполняйте поле «Описание» и добавляйте комментарии в VBA (строки, начинающиеся с ‘).
  • Тестирование: сначала тестируйте макрос на копии файла.
  • Версии: записывайте в описании дату и версию макроса.
  • Отделяйте логику и интерфейс: если макрос делает сложную логику, лучше переписать код вручную.

Когда запись макроса не подойдёт (ограничения и отказ)

  • Сложная логика и ветвления. Запись фиксирует точные шаги и плохо подходит для сложных условий. Лучше написать VBA вручную.
  • Работа с внешними API или современными веб‑интерфейсами. Для таких задач лучше Office Scripts (в Microsoft 365) или Power Query/API.
  • Масштабируемость. Записанный макрос часто опирается на жёсткие адреса ячеек. При изменении структуры таблиц он ломается.

Альтернативные подходы

  • Power Query: лучше подходит для импорта и трансформации данных. Поддерживает повторяемые трансформации и легко обновляется.
  • Office Scripts (Excel в Microsoft 365): автоматизация на JavaScript/TypeScript, хороша для облачных сценариев.
  • Надстройки и плагины: если нужна интеграция с внешними сервисами.
  • Полная ручная разработка VBA: для сложных автоматизаций и гибкой логики.

Безопасность и соответствие (GDPR и риски)

  • Никогда не открывайте и не запускайте макросы из ненадёжных писем или неизвестных файлов.
  • Храните PERSONAL.XLSB в защищённом месте и используйте пароль на рабочую станцию.
  • При работе с персональными данными убедитесь, что макрос не отправляет или не логирует персональные данные без согласия.
  • В корпоративной среде согласуйте запуск макросов с отделом ИТ и политиками безопасности.

Important: в Excel есть настройки безопасности макросов (Параметры центра управления безопасностью). По умолчанию Excel блокирует макросы без цифровой подписи.

Как редактировать макрос вручную

  1. Откройте редактор VBA: Alt + F11. 2. В окне Project откройте модуль с нужным макросом. 3. Внесите изменения и сохраните книгу как .xlsm (если макрос в текущей книге).

Совет: делайте резервную копию перед правкой. Отладку можно выполнять с помощью точек останова F9 и пошагового выполнения F8.

Критерии приёмки для макроса

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

Ролевые чеклисты (кто что проверяет)

Аналитик:

  • Проверил, что макрос корректно форматирует отчёт для разных наборов данных.
  • Протестировал на копии файла.

Бухгалтер:

  • Убедился, что макрос не изменяет исходные значения и корректно работает с датами и валютой.

ИТ‑администратор:

  • Проверил цифровую подпись макроса или политику безопасности.
  • Проверил расположение и доступ к PERSONAL.XLSB.

Разработчик VBA:

  • Произвёл рефакторинг кода, вынес повторяющиеся блоки в процедуры.
  • Добавил обработку ошибок и логирование.

Шпаргалка — сочетания клавиш и команды

  • Включить запись: Alt + T + M + R (диалог записи)
  • Остановить запись: Alt + T + M + R
  • Список макросов: Alt + F8
  • Редактор VBA: Alt + F11
  • Включить вкладку «Разработчик»: Файл > Параметры > Настроить ленту

Шаблон описания макроса (копировать и вставить)

  • Название: <имя макроса>
  • Версия: 1.0
  • Автор: <имя>
  • Дата: <дд.мм.гггг>
  • Назначение: Краткое описание.
  • Предположения: какие листы/диапазоны ожидаются.
  • Ограничения: когда макрос не применим.
  • Тесты: перечень положительных и негативных сценариев.

Частые ошибки и их исправление

  • Макрос «ломается» на другом компьютере: проверьте ссылки на библиотеки и пути.
  • Формат даты меняется: используйте NumberFormat или привязывайтесь к локали.
  • Макрос не запускается: убедитесь, что книга сохранена как .xlsm и макросы разрешены.

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

  1. Запуск на пустой книге — макрос не должен выдавать непойманных ошибок.
  2. Запуск на файле с минимальным набором данных — ожидаемый результат соответствует спецификации.
  3. Запуск на файле с максимально допустимой нагрузкой — проверка производительности.
  4. Отмена (undo) — при необходимости документировать, что некоторые изменения нельзя отменить через Ctrl+Z.

Ментальные модели и эвристики

  • Запись = быстрый прототип. Если задача повторяется и проста — записывайте. Если задача растёт по сложности — перепишите в чистый VBA.
  • Относительные ссылки = параметризованные макросы. Абсолютные адреса = жёсткие сценарии.
  • PERSONAL.XLSB = личная библиотека макросов, доступ ко всем книгам; однако при совместной работе лучше держать макросы в отдельной надстройке (.xlam) или в самой книге.

Краткий глоссарий

  • Макрос: запрограммированная последовательность действий в Excel, хранящаяся в VBA.
  • VBA: Visual Basic for Applications — язык, на котором записываются макросы.
  • PERSONAL.XLSB: скрытая персональная книга, где можно хранить макросы для всех сеансов Excel.

Сводка

Макросы в Excel — мощный способ автоматизировать рутинные операции. Для начала включите вкладку «Разработчик», запишите макрос, протестируйте его и поместите в подходящее хранилище (PERSONAL.XLSB или книгу). По мере роста требований переводите прототипы в чистый VBA или используйте альтернативы вроде Power Query и Office Scripts. Всегда соблюдайте меры безопасности: не запускайте макросы из ненадёжных источников и документируйте изменения.

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро