4 minute read
ЗАПИСЬ МАКРОСА В EXCEL
10
Полный цикл формирования рассылки состоит из следующих этапов:
Advertisement
Выбор типа документа
Выбор документа
Выбор получателей
Создание письма
Просмотр писем
Завершение слияния
Печать документа
ТЕМА 2. ОСНОВЫ VBA
1. ЗАПИСЬ МАКРОСА В EXCEL
Предположим, нужно часто применять полужирный шрифт Arial 12-го размера в качестве стиля форматирования символов ячеек рабочих листов, к которым надо привлечь особое внимание. С целью сокращения времени, необходимого для форматирования текста, можно записать макрос, который выбирает полужирный шрифт Arial 12-го размера и применяет это форматирование к любой ячейке или диапазону ячеек текущего выделенного фрагмента.
Задание стартовых условий
Т.к. необходимо, чтобы макрос работал с любой выделенной ячейкой или диапазоном ячеек, стартовыми условиями для этого макроса являются открытая рабочая книга с выделенным диапазоном ячеек в активном рабочем листе.
Назначение имени и сохранение макроса
Для запуска макрорекордера в Excel, назначения имени макросу, выбора места для сохранения нового макроса и выбора дополнительных опций нужно выполнить следующее: • Выбрать команду "Сервис-Макрос-Начать запись"; • В текстовом окне "Имя макроса" в качестве имени макроса ввести ArialBold12. Такое имя позволит запомнить, что выполняет макрос; • В поле "Описание" добавить следующий текст: «Форматирует выделенные ячейки Arial, Bold, 12»; • Список "Сохранить в…" следует использовать для выбора места, в котором будет сохранен записанный макрос. Доступными вариантами являются: "Личная книга макросов", "Новая книга", "Эта книга". Поскольку необходимо, чтобы этот макрос был доступен во всех рабочих книгах, надо выбрать "Личная книга макросов";
Если будущий макрос планируется использовать довольно часто, можно назначить для его запуска горячую клавишу; Для начала записи макроса необходимо нажать кнопку "ОК".
Запись действий
О процессе записи макроса свидетельствует наличие панели "Остановить запись", при этом, в левом нижнем углу окна книги Excel появляется надпись "Запись".
По умолчанию панель "Остановить запись" в Excel содержит две командные кнопки. Левая кнопка - кнопка "Стоп"; служит для завершения процесса записи макроса. Правая кнопка - кнопка "Относительная ссылка". По умолчанию Excel записывает абсолютные ссылки на ячейки в макросы. Если, например, начать запись в выделенной ячейке А5, а затем выделить ячейку справа от А5, т.е. В5, то записанный макрос также будет выделять ячейку В5. Для записи указанного макроса необходимо выполнить следующие действия (после нажатия кнопки "ОК" в окне "Запись макроса"): • Из выпадающего списка "Шрифт" панели "Форматирование" выбрать шрифт Arial; • Из выпадающего списка "Размер шрифта" той же панели выбрать 12-й кегль; • Нажать кнопку "Ж" выбора начертания шрифта.
После этого макрорекордер необходимо остановить, нажав кнопку "Стоп" на панели "Остановить запись". Либо выбрать команду "Сервис-МакросОстановить запись"). Новый макрос в Excel создан.
Выполнение макроса
После того, как макрос записан, его можно выполнить. При выполнении макроса Word или Excel следуют всем инструкциям, записанным в макросе. Первый метод: И в Word, и в Excel макрос запускается выбором команд меню РАЗРАБОТЧИК - МАКРОС и в открывшемся окне выбрать макрос и нажать кнопку ВЫПОЛНИТЬ.
Диалоговые окна для запуска макросов в Word и Excel практически идентичны - надо выбрать название макроса и щелкнуть кнопку "Выполнить". Следует помнить, что перед тем, как запустить макрос на выполнение, должны быть выполнены стартовые условия. В нашем случае - выделен фрагмент текста в Word или блок ячеек в Excel. В Word диалоговое окно "Макрос" перечисляет макросы, сохраненные в текущем документе или в любых общих шаблонах. Если затрудняетесь найти нужный макрос в полном списке доступных макросов - следует использовать список "Макросы" для выбора определенного документа или шаблона. Диалоговое окно "Макрос" в Excel перечисляет макросы, сохраненные в любых рабочих книгах, открытых в данный момент. Имя рабочей книги, содержащей макрос, помещено перед именем макроса в списке "Имя макроса" , если макрос не находится в текущей рабочей книге. Если необходимый макрос не находится в списке, откройте рабочую книгу, в которой был сохранен этот макрос, чтобы сделать макрос доступным перед тем, как будет открыто диалоговое окно "Макрос" . Если в процессе записи макроса ему были присвоены "горячие" клавиши или кнопки на панели инструментов, то данный макрос может быть запущен нажатием соответствующей комбинации клавиш или соответствующей кнопкой на панели инструментов.
Второй метод: Создать кнопку на рабочем листе для выполнения макроса, выбрав меню РАЗРАБОТЧИК - ВСТАВИТЬ, выбрать элемент КНОПКА, растянуть рамку кнопки на рабочем листе, отпустить левую кнопку мыши, выбрать нужный макрос и написать на кнопке название макроса.
Для редактирования названия, в замене макроса и удаление кнопки нажать на кнопке правую кнопку мыши и выбрать нужную команду:
Код макроса
При записи макроса в Word или Excel рекордер сохраняет последовательность текстовых инструкций, которые описывают на языке программирования VBA различные действия, выполняемые пользователем, когда рекордер включен. Это текстовое описание команд называется исходным кодом для этого макроса. Позже, когда макрос запускается на выполнение, VBA считывает записанные в исходном коде инструкции и выполняет каждую последовательно, дублируя таким образом действия, которые выполнялись пользователем при записи макроса. Ниже приведен исходный код макросов "ВыделенныйТекст" (Word) и "ArialBold12" (Excel).