Как запустить макрос в excel?
Visual Basic для приложений (VBA) — это язык программирования, интегрированный в Microsoft Excel, а также в другие приложения Microsoft Office, такие как Word и Access. Код VBA в Excel важен по нескольким причинам:
Важность кода VBA в Excel
Автоматизация повторяющихся задач
VBA позволяет пользователям автоматизировать повторяющиеся и трудоемкие задачи в Excel. Это может включать в себя все: от манипуляций с данными, форматирования и создания отчетов до сложных вычислений. Написав код VBA, вы можете создавать макросы для выполнения этих задач одним нажатием кнопки.
Улучшенный функционал:
VBA позволяет пользователям расширять функциональность Excel за пределы его встроенных функций. Вы можете создавать собственные функции, пользовательские формы и диалоговые окна для взаимодействия с пользователями и обеспечения более удобного взаимодействия с ними.
Анализ данных и отчетность:
С помощью VBA вы можете разрабатывать сложные инструменты анализа данных и составления отчетов. Это может включать автоматизацию процесса импорта данных, их очистку и обработку, а также создание подробных отчетов и информационных панелей.
Интеграция с другими приложениями:
VBA облегчает интеграцию между Excel и другими приложениями Microsoft Office, а также с внешними приложениями. Это особенно полезно, когда вам необходимо передавать данные между различными программными инструментами или процессами автоматизации, включающими несколько приложений.
Обработка ошибок и отладка:
VBA предоставляет надежные возможности обработки ошибок, позволяя писать код, который корректно обрабатывает ошибки и выдает содержательные сообщения об ошибках. Это упрощает устранение неполадок и отладку кода.
И многое можно сделать с помощью VBA. Написание кода VBA для начинающих может оказаться немного сложным, но вот как это сделать.
1. Запуск макроса из списка
На вкладке «Разработчик» вы можете получить доступ к списку МАКРОСОВ, которые есть в вашей книге или в PERSONAL.XLSB. Чтобы запустить макрос в Excel, вы можете выполнить следующие действия:
- Нажмите кнопку макроса на вкладке «Разработчик» и откройте список макросов.
- В этом списке МАКРОСОВ будут все макросы, которые есть в открытых книгах, включая личную книгу макросов.
- Просто выберите макрос, который хотите запустить, и нажмите кнопку «ЗАПУСК».
Когда вы нажимаете кнопку «Выполнить», макрос запускается и диалоговое окно закрывается.
2. Запустите макрос с помощью сочетания клавиш.
Вы также можете запустить макрос с помощью сочетания клавиш. Обычно, когда вы записываете макрос , вас просят определить горячую клавишу, которую вы можете использовать для запуска этого макроса.

А если вы пишете макрос, вы можете установить сочетание клавиш из списка макросов.
- Выберите имя макроса, для которого вы хотите установить сочетание клавиш, и нажмите «Параметры».
- После этого щелкните внутри поля ввода и нажмите горячую клавишу, которую вы хотите установить.
3. Добавьте кнопку макроса на панель быстрого доступа.
Вы также можете добавить кнопку на панель быстрого доступа для запуска макроса. Вы можете использовать следующие шаги:
- Сначала щелкните небольшой раскрывающийся список на панели быстрого доступа и выберите дополнительные команды, и вы перейдете к фактическим параметрам настройки панели быстрого доступа.
- Теперь отсюда выберите макросы команды истины и выберите макрос, который вы хотите добавить, после этого нажмите кнопку «Добавить», и он добавит этот макрос, чтобы создать панель быстрого доступа.
- В конце нажмите ОК.
И у вас появится кнопка для добавленного вами макроса.

4. Добавьте макрос к фигуре
Допустим, у вас есть код VBA, который вам нужно часто использовать в работе. В этой ситуации вы можете создать кнопку и назначить ей этот макрос.
- Сначала вставьте простую фигуру на вкладке «Вставка» ➜ «Иллюстрации» ➜ «Фигуры». Выберите одну из фигур, которую хотите использовать в качестве кнопки.
- После этого щелкните правой кнопкой мыши по этой фигуре и выберите «Назначить макрос».
- Теперь из списка макросов выберите макрос, который вы хотите назначить фигуре.
Теперь каждый раз, когда вы нажимаете на эту фигуру, будет запускаться назначенный вами макрос.
5. Назначить макрос кнопке управления формой
Помимо использования фигуры, вы также можете использовать кнопку управления для запуска макроса.
- Сначала перейдите на вкладку «Разработчик» и группу «Элементы управления», затем нажмите «Вставить». В раскрывающемся списке «Вставка» нажмите кнопку, чтобы вставить его.
- После этого он покажет вам список макросов, из которого вы можете его выбрать.
- После того, как вы выберете макрос и нажмете «ОК», в электронной таблице появится кнопка (вы можете изменить текст кнопки, чтобы дать ей осмысленное имя).
6. Откройте и закройте книгу
Вы также можете создать макрос, который будет запускаться при открытии и закрытии книги. Это означает, что когда вы открываете или закрываете книгу, назначенный вами макрос будет выполнен. Для этого вам нужно использовать «auto_open» и «auto_close».
Допустим, вы хотите назначить макрос, который будет запускаться при открытии книги. Вы должны использовать auto_open в качестве имени этого макроса.
Sub auto_open() Range("A1").Value = Now End Sub

Теперь этот микрозапускается, когда вы открываете книгу и вводите текущую дату, а затем вводите ячейку A1 активного листа.
Аналогичным образом вы также можете использовать «auto_close» для создания этого макроса при закрытии книги.
7. Активируйте и деактивируйте рабочий лист.
Точно так же, как и в рабочей книге, можно запускать макрос для активации и деактивации рабочего листа. И в этом случае вам нужно добавить этот макрос в окно кода этого листа.
- Сначала щелкните правой кнопкой мыши вкладку электронной таблицы и выберите «Показать код».
- Теперь в окне кода выберите рабочий лист в раскрывающемся меню слева. Когда вам нужно деактивировать; вы получите новую подписку с именем «Worksheet_Deactivate».
- Теперь вам нужно добавить в эту процедуру код, который вы хотите запускать при отключении листа.
Private Sub Worksheet_Deactivate() Range(“A1”).Value = Now End Sub
А если вы хотите запускать макрос при активации листа, выберите «Включить» вместо «Отключить» в раскрывающемся списке.

Private Sub Worksheet_Activate() Range(“A1”).Value = Now End Sub
8. Запустите макрос при изменении на листе.
Вы также можете запустить макрос при внесении изменений в лист. Например, когда вы вводите значение в ячейку или удаляете значение из ячейки.
Для этого необходимо еще раз ввести свойство в окне кода электронной таблицы и выбрать из выпадающего списка «Редактировать выборку».

Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range(“A1”).Value = “Last Updated: ” & Format(Now, “dd-mmm-yy hh:mm:ss Am/pm”) End Sub
9. В другой процедуре
Вы можете запустить макрос из другой процедуры, используя оператор вызова. Используйте ключевое слово Call, а затем имя макроса.

Sub myStrikeThrough() If Selection.Value = “Yes” Then Selection.Value = “No” Else Selection.Value = “Yes” End If End Sub Sub markDone() Call myStrikeThrough Selection.Font.Bold = True End Sub
Когда вы запускаете макрос «markDone», он сначала запускает макрос «mystrikethrough», а затем выделяет выделенный шрифт жирным шрифтом.
10. Запланируйте макрос
Вы также можете запланировать запуск макроса в определенное время. Допустим, вы хотите запустить макрос утром в 8:30, можете указать время и мы его запустим.
Для этого вам нужно использовать метод Application.OnTime. Предположим, у вас есть макрос «myCode», вы можете написать код, как показано ниже, чтобы запустить его в 8:30.
Application.OnTime TimeValue("08:30:00"), "myCode"