Как запустить макрос в Excel и создать кнопку макроса

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

Хотя запуск макроса Excel является простой задачей для опытных пользователей, новичкам это может быть не сразу очевидно. В этой статье вы узнаете несколько методов запуска макросов, некоторые из которых могут полностью изменить ваш способ взаимодействия с книгами Excel.

Как запустить макрос из ленты Excel

Один из самых быстрых способов выполнить VBA в Excel — запустить макрос из Разработчик вкладка Если вы никогда раньше не имели дело с кодом VBA, вам может потребоваться сначала активировать вкладку «Разработчик». А затем сделайте следующее:

  1. На Разработчик вкладка, в Код щелкните Макросы. Или нажмите сочетание клавиш Alt + F8.
    Запуск макроса из вкладки «Разработчик»
  2. В появившемся диалоговом окне выберите интересующий макрос и нажмите «Выполнить».
    Выберите макрос для запуска.

Кончик. Если вкладка «Разработчик» не добавлена ​​на ленту Excel, нажмите Alt + F8, чтобы открыть макрос диалог.

Запуск макроса с пользовательским сочетанием клавиш

Если вы регулярно выполняете определенный макрос, вы можете назначить ему горячую клавишу. Ярлык можно добавить как при записи нового макроса, так и к уже существующему. Для этого выполните следующие шаги:

  1. На Разработчик вкладка, в Код щелкните Макросы.
  2. в макрос диалоговом окне щелкните Параметры.
    Щелкните Параметры, чтобы изменить параметры макроса.
  3. Параметры макроса появится диалоговое окно. в Ярлык введите любую прописную или строчную букву, которую вы хотите использовать для ярлыка, а затем нажмите кнопку ОК, чтобы сохранить изменения.
    • Для строчных букв сочетание клавиш — Ctrl + буква.
    • Для прописных букв сочетание клавиш Ctrl + Shift + буква.
      Назначьте ярлык макросу.
  4. Закрой макрос диалоговое окно.

Кончик. Рекомендуется всегда использовать комбинации клавиш в верхнем регистре для макросов (Ctrl + Shift + буква), чтобы не переопределять сочетания клавиш Excel по умолчанию. Например, если вы назначите макросу сочетание клавиш Ctrl + f, вы потеряете возможность вызывать макрос. Найти и заменить диалог.

После назначения ярлыка просто нажмите эту комбинацию клавиш, чтобы запустить макрос.

Как запустить макрос из редактора VBA

Если вы стремитесь стать профессионалом в Excel, то вам обязательно нужно знать, как запустить макрос не только из Excel, но и из редактора Visual Basic. Хорошая новость в том, что это намного проще, чем вы могли ожидать 🙂

  1. Нажмите Alt + F11, чтобы запустить редактор Visual Basic.
  2. в Проводник проекта окно слева, дважды щелкните модуль, содержащий ваш макрос, чтобы открыть его.
  3. в Код в окне справа вы увидите все макросы, перечисленные в модуле. Поместите курсор в любое место внутри макроса, который вы хотите выполнить, и выполните одно из следующих действий:
    • В строке меню нажмите Бежать > Запустить Sub/UserForm.
    • На панели инструментов нажмите кнопку Запустить макрос кнопка (зеленый треугольник).

    Кроме того, вы можете использовать один из следующих ярлыков:

    • Нажмите F5, чтобы запустить весь код.
    • Нажмите F8, чтобы запустить каждую строку кода отдельно. Это очень полезно при тестировании и отладке макросов.

    Запуск макроса из редактора VBA

Кончик. Если вам нравится работать с Excel с клавиатуры, вам может пригодиться этот туториал: 30 самых полезных сочетаний клавиш Excel.

Как создать кнопку макроса в Excel

Традиционные способы запуска макросов несложны, но все же могут представлять проблему, если вы делитесь книгой с кем-то, у кого нет опыта работы с VBA — они просто не будут знать, где искать! Чтобы сделать запуск макроса действительно простым и интуитивно понятным для всех, создайте собственную кнопку макроса.

  1. На Разработчик вкладка, в Элементы управления группа, нажмите Вставлятьи выберите Кнопка под Из элементов управления.
    Вставка кнопки на лист
  2. Щелкните в любом месте рабочего листа. Это откроет Назначить макрос диалоговое окно.
  3. Выберите макрос, который вы хотите назначить кнопке, и нажмите ХОРОШО.
    Назначьте макрос кнопке в Excel.
  4. Кнопка вставляется в рабочий лист. Чтобы изменить текст кнопки, щелкните правой кнопкой мыши кнопку и выберите «Редактировать текст» в контекстном меню.
    Изменение текста кнопки макроса
  5. Удалите текст по умолчанию, такой как Кнопка 1 и введите свой собственный. При желании вы можете отформатировать текст жирным шрифтом или курсивом.
    Введите текст для кнопки макроса.
  6. Если текст не помещается на кнопке, увеличьте или уменьшите размер кнопки, перетащив маркеры изменения размера. Когда закончите, щелкните в любом месте листа, чтобы выйти из режима редактирования.

И теперь вы можете запустить макрос, нажав на его кнопку. Назначенный нами макрос форматирует выбранные ячейки, как показано на скриншоте ниже:
Кнопка Excel для запуска макроса

Кончик. Вы также можете назначить макрос существующей кнопке или другим элементам управления формы, например кнопкам прокрутки или полосам прокрутки. Для этого щелкните правой кнопкой мыши элемент управления, вставленный на лист, и выберите Назначить макрос из всплывающего меню.

Создать кнопку макроса из графического объекта

К сожалению, нет возможности настраивать внешний вид элементов управления кнопками, из-за чего кнопка, которую мы только что создали, выглядит не очень красиво. Чтобы сделать действительно красивую макрокнопку Excel, вы можете использовать фигуры, значки, изображения, WordArt и другие объекты.

В качестве примера я покажу вам, как запустить макрос, щелкнув фигуру:

  1. На Вставлять вкладка, в Иллюстрации нажмите «Фигуры» и выберите нужный тип фигуры, например, прямоугольник со скругленными углами:
    Вставка фигуры
  2. На листе щелкните место, куда вы хотите вставить объект формы.
  3. Отформатируйте кнопку формы так, как вы хотите. Например, вы можете изменить цвета заливки и контура или использовать один из предопределенных стилей на странице. Формат формы вкладка Чтобы добавить текст в фигуру, просто дважды щелкните ее и начните печатать.
  4. Чтобы связать макрос с фигурой, щелкните объект фигуры правой кнопкой мыши, выберите Назначить макрос…, затем выберите нужный макрос и нажмите ХОРОШО.
    Назначение макроса фигуре

Теперь у вас есть фигура, которая выглядит как кнопка и запускает назначенный макрос всякий раз, когда вы нажимаете на нее:
Запустите макрос, щелкнув фигуру

Как добавить кнопку макроса на панель быстрого доступа

Кнопка макроса, вставленная на лист, выглядит хорошо, но добавление кнопки на каждый лист требует много времени. Чтобы сделать ваш любимый макрос доступным из любого места, добавьте его на панель быстрого доступа. Вот как:

  1. Щелкните правой кнопкой мыши панель быстрого доступа и выберите «Дополнительные команды…» в контекстном меню.
  2. в Выберите команды из список, выберите Макросы.
  3. В списке макросов выберите тот, который хотите назначить кнопке, и нажмите «Добавить». Это переместит выбранный макрос в список кнопок панели быстрого доступа справа.
    Добавление кнопки макроса на панель быстрого доступа

    На этом этапе вы можете нажать OK, чтобы сохранить изменения или выполнить еще пару настроек, описанных ниже.

  4. Если вы обнаружите, что значок, добавленный Microsoft, не подходит для вашего макроса, нажмите «Изменить», чтобы заменить значок по умолчанию другим.
    Изменить кнопку макроса.
  5. в Кнопка «Изменить» В появившемся диалоговом окне выберите значок для кнопки макроса. При желании вы также можете изменить Показать имя чтобы сделать его более удобным для пользователя. В отличие от имени макроса, имя кнопки может содержать пробелы.
    Изменение значка и отображаемого имени кнопки макроса
  6. Нажмите OK дважды, чтобы закрыть оба диалоговых окна.

Сделанный! Теперь у вас есть собственная кнопка Excel для запуска макроса:
Кнопка панели быстрого доступа для запуска макроса.

Как поместить кнопку макроса на ленту Excel

Если у вас есть несколько часто используемых макросов в панели инструментов Excel, вам может быть удобно иметь пользовательскую группу ленты, например Мои макросыи добавьте все популярные макросы в эту группу в виде кнопок.

Сначала добавьте пользовательскую группу на существующую вкладку или собственную вкладку. Подробные инструкции см.:

Затем добавьте кнопку макроса в пользовательскую группу, выполнив следующие действия:

  1. Щелкните ленту правой кнопкой мыши и выберите пункт Настроить ленту.
  2. В появившемся диалоговом окне выполните следующие действия:
    • На вкладках списка справа выберите пользовательскую группу.
    • в Выберите команды из список слева, выберите Макросы.
    • В списке макросов выберите тот, который хотите добавить в группу.
    • Нажмите кнопку «Добавить».

    Для этого примера я создал новую вкладку с именем Макросы и пользовательская группа с именем Форматирование макросов. На скриншоте ниже мы добавляем Format_Headers макрос в эту группу.
    Добавление макроса в пользовательскую группу ленты

  3. Теперь макрос добавлен в пользовательскую группу ленты. Чтобы присвоить кнопке макроса более понятное имя, выберите ее и нажмите «Переименовать»:
    Макрос добавляется в пользовательскую группу ленты.
  4. в Переименовать диалоговое окно, введите любое имя, которое вы хотите в Показать имя поле (в названиях кнопок допускаются пробелы) и выберите значок для кнопки макроса. Когда закончите, нажмите OK.
    Переименуйте кнопку макроса и выберите для нее значок.
  5. Нажмите ХОРОШО чтобы сохранить изменения и закрыть главное диалоговое окно.

В качестве примера я поместил три макроса на ленту Excel и теперь могу запускать любой из них одним нажатием кнопки:
На ленту Excel добавлены три кнопки макроса.

Как запустить макрос при открытии книги

Иногда вам может понадобиться автоматически запускать макрос при открытии книги, например, чтобы отобразить какое-то сообщение, запустить скрипт или очистить определенный диапазон. Это можно сделать двумя способами.

Автоматический запуск макроса с помощью события Workbook_Open

Ниже приведены шаги для создания макроса, который автоматически запускается при каждом открытии определенной книги:

  1. Откройте рабочую книгу, в которой вы хотите выполнить макрос.
  2. Нажмите Alt + F11, чтобы открыть редактор Visual Basic.
  3. В Project Explorer дважды щелкните ThisWorkbook, чтобы открыть окно кода.
  4. в Объект список над окном кода, выберите Workbook. Это создает пустую процедуру для Открытым событие, к которому вы можете добавить свой собственный код, как показано на скриншоте ниже.

Запуск макроса при открытии книги

Например, следующий код будет отображать приветственное сообщение при каждом открытии книги:

Private Sub Workbook_Open() MsgBox «Добро пожаловать в ежемесячный отчет!» Конец сабвуфера

Запуск макроса при открытии книги с помощью события Auto_Open

Другой способ автоматического запуска макроса при открытии книги — использование события Auto_Open. В отличие от события Workbook_Open, Auto_Open() должен находиться в стандартном модуле кода, а не в Эта рабочая тетрадь.

Вот шаги для создания такого макроса:

  1. в Проводник проектащелкните правой кнопкой мыши Модулиа затем щелкните Вставлять > Модуль.
  2. в Код окно, напишите следующий код:

Макрос запускается автоматически при каждом открытии книги.

Вот пример реального кода, который отображает окно сообщения при открытии книги:

Sub Auto_Open() MsgBox «Добро пожаловать в ежемесячный отчет!» Конец сабвуфера

Примечание! Auto_Open событие устарело и доступно для обратной совместимости. В большинстве случаев его можно заменить Рабочая книга_Открыть мероприятие. Для получения дополнительной информации см. Workbook_Open против Auto_Open.

Какое бы событие вы ни использовали, ваш макрос будет запускаться автоматически каждый раз, когда вы открываете файл Excel, содержащий код. В нашем случае отображается следующее окно сообщения:
Окно сообщения отображается каждый раз, когда вы открываете книгу.

Теперь, когда вы знаете множество способов запуска макроса в Excel, вам просто нужно выбрать тот, который лучше всего подходит для ваших нужд. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!

Вас также могут заинтересовать

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *