Автоматизация действий в приложениях
Записанная последовательность команд, которая может быть запущена одним действием для выполнения набора операций с данными или документами. Часто реализуется на языках вроде VBA (Visual Basic for Applications) или через встроенные редакторы макросов.
Близкие слова
- скрипт автоматизации
- командная последовательность
Вы можете записать макрос в Excel, чтобы он автоматически форматировал таблицу и строил график по выбранным данным.
В Word макрос позволяет быстро применить шаблон оформления ко всем абзацам документа.
Инструкция препроцессора в программировании
Конструкция языка программирования (например, C/C++), которая выполняет текстовую замену или генерацию кода на этапе препроцессинга, до начала компиляции. Не является функцией языка во время выполнения программы.
Близкие слова
- препроцессорная директива
- макрос-директива
В коде на C++ директива #define MAX_SIZE 1024 определяет макрос, который заменит все вхождения MAX_SIZE числом 1024 перед компиляцией.
Использование макросов позволяет создавать параметризованные шаблоны кода без накладных расходов на вызов функции.
Разница между макросом, скриптом и функцией
Хотя термины часто используются как синонимы в бытовом общении, технически они различаются. Функция — это самостоятельный блок кода, который вызывается из разных мест программы и имеет свой собственный контекст выполнения. Скрипт — это программа, написанная на интерпретируемом языке (например, Python или JavaScript), которая выполняется построчно. Макрос в офисных приложениях часто является записью действий, которая может быть преобразована в скрипт (VBA). В компилируемых языках макрос — это именно текстовая подстановка, не имеющая собственной области видимости и типов данных до этапа компиляции.
Важно понимать границы замены: нельзя назвать функцией макрос-подстановку в C++, так как она не имеет параметров в классическом понимании и не может быть отлажена в рантайме. И наоборот, сложный скрипт автоматизации в Excel, написанный на VBA, часто называют макросом из-за способа его запуска (кнопкой или сочетанием клавиш), хотя технически это полноценная программа.
Безопасность и риски использования
Макросы обладают высокими правами доступа к системе и данным, что делает их потенциальным вектором атак. Вредоносные макросы могут автоматически запускаться при открытии документа (если настройки безопасности не ограничивают это), получая доступ к файловой системе или сети. Поэтому современные версии офисных пакетов по умолчанию блокируют выполнение макросов из недоверенных источников, требуя явного подтверждения пользователя или цифровой подписи разработчика.
При работе с чужими документами стоит проявлять осторожность: даже если файл выглядит как обычный отчет, наличие кнопки «Включить содержимое» должно насторожить. Безопаснее использовать макросы, написанные самостоятельно для собственных задач, где вы контролируете логику их работы.
