HTML, Excel, Word, SEOОсновы VBA ⇒ Макрос и макрорекордер

Основы VBA

Самоучитель vba: Теория
..Первый макрос в Word
..Этапы записи макроса
..Запись макроса в Word
..Запись макроса в Excel
..Код макроса
..Выполнение макроса
..Типы данных VBA
..Переменные VBA
..Константы VBA
..Совместимость типов данных
..Арифметические операторы
..Логические операторы
..Строковые операторы
..Функции VBA ч.1
..Функции VBA ч.2
..Примеры использования функций
..Функции host-приложений
..Функции-процедуры
..Пользовательские функции в Excel
..Операторы ветвления: простой выбор
..Операторы ветвления: сложный выбор
..Использование MsgBox
..Прерывание процедур и функций
..Необязательные аргументы функций
..Циклы VBA ч.1
..Циклы ч.2
..Циклы ч.3
..Массивы VBA ч.1
..Массивы ч.2
..Массивы ч.3
..Управление файлами с помощью VBA
Самоучитель vba: Практика
Игра: Цепная реакция
Приложения
..Сумматор
..Наклейки
..Восьмерка
..Менеджер почты
Надстройки
..DEF
..SortSheets
..HideSheet

 

Макрос и макрорекордер


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



Записанные макрорекордером последовательности команд первоначально назывались макрокомандами. Сейчас этот термин сократился до более простого слова - макрос. Применительно к информатике и программным приложениям под словом макрос всегда подразумевается макрокоманда.

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


Макрорекордер (или просто "рекордер") записывает все действия пользователя, включая ошибки и неправильные запуски. Когда программа воспроизводит макрос, она выполняет каждую записанную рекордером команду точно в такой последовательности, в которой она выполнялась во время записи. Первые макрорекордеры имели серьезный недостаток. Если во время записи длинной последовательности действий была допущена ошибка, то единственной возможностью удалить эту ошибку являлась повторная запись макроса. Кроме того, если надо было внести небольшое изменение в длинный макрос, то также приходилось перезаписывать весь макрос. Перезапись длинного макроса часто приводила к дополнительным ошибкам в новой записи. По этим причинам разработчики программного обеспечения добавили макрорекордерам возможность редактирования макросов, чтобы можно было легко исправлять небольшие ошибки или вносить другие изменения в макрос без его полной перезаписи.


Поскольку можно использовать макрорекордер в Word или Excel для записи действий в макрос и затем воспроизводить их, может показаться, что изучать VBA не обязательно. Однако одни записанные макросы не могут всегда удовлетворить все потребности. Записанный макрорекордером макрос может только воспроизводить без отклонений каждое действие в той же последовательности, в которой первоначально выполнялись действия. VBA можно использовать для улучшения макросов, записанных макрорекордером, значительно повышая их мощь и возможности.


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




В начало страницы



В начало страницы