Макросы Excel - Настройка макроса
Вы можете записать макрос и сохранить его с именем Auto_Open, чтобы запускать его всякий раз, когда вы открываете книгу, содержащую этот макрос.
Вы также можете написать код VBA для той же цели с событием Open книги. Событие Open запускает код в подпроцедуре Workbook_Open () каждый раз, когда вы открываете книгу.
Запись макроса Auto_Open
Вы можете записать макрос Auto_Run следующим образом:
- Щелкните вкладку ПРОСМОТР на ленте.
- Щелкните Макросы.
- Щелкните Записать макрос. Появится диалоговое окно «Запись макроса».
- Введите Auto_Run в качестве имени макроса.
- Введите описание и нажмите ОК.
- Начните запись макроса.
- Остановить запись.
- Сохраните книгу как книгу с поддержкой макросов.
- Закройте книгу.
- Откройте книгу. Макрос Auto_Run запустится автоматически.
Если вы хотите, чтобы Excel запускался без запуска макроса Auto_Open, удерживайте клавишу SHIFT при запуске Excel.
Ограничения макроса Auto_Open
Ниже приведены ограничения макроса Auto_Open:
Если книга, в которой вы сохранили макрос Auto_Open, содержит код для события Open книги, код для события Open переопределит действия в макросе Auto_Open.
Макрос Auto_Open игнорируется, когда книга открывается путем выполнения кода, использующего метод Open.
Макрос Auto_Open запускается перед открытием любых других книг. Следовательно, если вы записываете действия, которые вы хотите, чтобы Excel выполнял в книге по умолчанию Book1 или в книге, загруженной из папки XLStart, макрос Auto_Open завершится ошибкой при перезапуске Excel, поскольку макрос запускается до открытия книг по умолчанию и запускаемых книг. .
Если вы столкнетесь с любым из этих ограничений, вместо записи макроса Auto_Open вы должны написать код для события Open, как описано в следующем разделе.
Код VBA для открытого события книги
Вы можете написать код, который будет выполняться при открытии книги. VBA предоставляет вам событие под названием open, которое включает процедуру VBA для действий, которые необходимо выполнить при открытии книги.
Откройте книгу, в которой вы сохранили макрос, который вы написали для абсолютных ссылок - Report_ProjectXYZ. Когда этот макрос запускается, новый рабочий лист будет добавлен в книгу, и структура отчета проекта появится на новом листе.
Вы можете написать код макроса, который будет выполнять эти действия при открытии книги. Это означает, что когда вы откроете книгу «Отчет по проекту», новый рабочий лист со структурой отчета будет готов, чтобы вы могли ввести подробности.
Следуйте приведенной ниже процедуре в редакторе VBA:
Дважды щелкните ThisWorkbook в проводнике проектов.
В окне кода выберите Workbook в левом раскрывающемся списке и Open в правом раскрывающемся списке. Появится Sub Workbook_Open ().
Щелкните Модули в проводнике проектов.
Дважды щелкните имя модуля, содержащего код макроса.
Скопируйте код макроса из модуля и вставьте его в Sub WorkBook_Open ().
Сохраните книгу с поддержкой макросов. Откройте его снова. Запускается макрос, и вставляется новый рабочий лист со структурой отчета.