Как в эксель добавить макрос: Добавление и изменение макроса для элемента управления на листе

Добавление и изменение макроса для элемента управления на листе

Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше

Чтобы автоматизировать управление формы или ActiveX формы, с помощью следующих экономий:

  • Выполнение действия или операции, когда пользователь щелкает форму, назначив ему макрос.

  • Запустите Visual Basic для приложений (VBA) для обработки событий, которые происходят, когда пользователь взаимодействует с ActiveX управления.

Дополнительные сведения о создании макроса см. в теме «Создание и удаление макроса».

Добавление и изменение макроса для управления формы


    org/ItemList»>

  1. Щелкните правой кнопкой мыши нужный макрос и выберите «Назначить макрос».

    Появится диалоговое окно «Назначение макроса».

  2. Чтобы указать расположение существующего макроса, выберите его расположение в поле «Макрос» одним из следующих образом:

    • Чтобы найти макрос во всех открытых книгах, выберите «Все открытые книги».

      Примечание: Если макрос, который вы хотите назначить этому средству управления, находится в отдельной книге, сначала откройте эту книгу, чтобы она была доступна в списке «Макрос».

    • org/ListItem»>

      Чтобы ограничить поиск макроса книгой, содержаной текущий книгу, выберите «Эта книга».

    • Чтобы ограничить поиск макроса определенной книгой, выберите ее из списка доступных имен открытых книг.

  3. Выполните одно из указанных ниже действий.


    Назначение макроса    Выполните одно из указанных ниже действий.


    • Запись нового макроса    Нажмите кнопку«Запись» и по завершению записи макроса на вкладке «Разработчик» в группе «Код» нажмите кнопку «Остановить «.


    • Назначение существующего макроса    Дважды щелкните макрос в списке или введите его имя в поле «Имя макроса».


    • Создание макроса    Нажмите кнопку «Создать» и в редакторе Visual Basic ввести новый макрос.

      Дополнительные сведения о том, как писать макрос, см. в Visual Basic справке.


      Изменение назначенного макроса    Выполните одно из указанных ниже действий.


    • Изменение назначенного макроса    Щелкните имя макроса в поле «Имя макроса» и нажмите кнопку «Изменить».


    • Назначение другого существующего макроса    Дважды щелкните макрос в списке или введите его имя в поле «Имя макроса».

Добавление и изменение макроса для ActiveX управления


  1. Если вкладка Разработчик недоступна, отобразите ее.

    В Excel 2016, 2013 и 2010:

    1. Щелкните Файл > Параметры > Настроить ленту.

    2. В окне «Настройка ленты»выберите поле «Разработчик» и нажмите кнопку «ОК».

    В Excel 2007

    1. Нажмите кнопку Microsoft Office , а затем — кнопку Параметры Excel.

    2. В категории «Популярные» в области «Топ параметров работы с Excel»выберите на ленте вкладку «Разработчик» и нажмите кнопку «ОК».

  2. org/ListItem»>

    Чтобы изменить элемент ActiveX, убедитесь, что выбран режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора .

  3. Выберем его.

    Дополнительные сведения см. в подменю «Выбор и отбирать элементы управления» на сайте.

  4. на вкладке «Разработчик» в группе «Элементы управления» нажмите кнопку » «.

    Примечание: Чтобы изменить существующий макрос, щелкните его правой кнопкой мыши и выберите «Код представления».

  5. В редакторе Visual Basic напишите новый макрос или измените существующий.

    Дополнительные сведения о том, как писать макрос, см. в Visual Basic справке.

  6. Завершив ввод макроса, нажмите кнопку «Закрыть» и «Вернуться в Microsoft Excel» в меню «Файл» Visual Basic редакторе.

  7. Завершив разработку элементов управления, на вкладке «Разработчик» в группе «Элементы управления» отключите режим .

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

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

В данной статье для Вас буде приведет пошаговый пример с картинками и фрагментом простейшего готового кода VBA.

Как выполнить макрос VBA в Excel

Например, самый простой способ запустить макрос для понимания, но сложный для реализации:

  1. Выберите инструмент: «РАЗРАБОТЧИК»-«Код»-«Макросы».
  2. В появившемся окне «Макрос» из списка всех в первую очередь доступных макросов для данной рабочей книги Excel выберите любой понравившийся вам и нажмите на кнопку «Выполнить».

Программа макроса выполнить свои функции.

Теперь мы можем двигаться от простого к еще простейшему) Ведь запускать макросы таким способом весьма неудобно. Далее рассмотрим более простые варианты.

Полезный совет! Если вы хотите отредактировать макрос тогда выберите его в списке выше описанного инструмента и нажмите на кнопку «Войти», а не используйте кнопку «Изменить». С помощью кнопки войти вы всегда сможете перейти к исходному коду выбранного макроса. Автоматически откроется редактор Visual Basic именно в том месте где написан код данного макроса. Кнопка «Изменить» к сожалению, не для всех макросов работает одинаково.

Внимание! Макросы, созданные в надстройках Excel, могут быть по умолчанию не доступны в списке диалогового окна «Макрос» в целях политики безопасности. Ведь имена макросов в надстройках Excel обычно скрыты от сторонних пользователей. Но если ввести правильно соответственное значение в поле «Имя макроса:» то все кнопки в диалоговом окне будут активными. А значит готовы к работе с данным макросом из надстройки и пользователь является автором надстройки или доверительным лицом.



Запуск макроса с помощью горячих клавиш

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

Чтобы присвоить свою комбинацию клавиш для определенного макроса следует сделать так:

  1. Снова выберите инструмент: «РАЗРАБОТЧИК»-«Код»-«Макросы».
  2. В появившемся диалоговом окне «Макрос» выберите желаемую макропрограмму из списка и нажмите на кнопку «Параметры».
  3. В появившемся диалоговом окне «Параметры макроса» в поле ввода «Сочетание клавиш: CTRL+» введите маленькую или большую латинскую букву. И нажмите на кнопку ОК.

Теперь нажмите свою комбинацию горячих клавиш для вызова выбранного макроса. Как видно теперь вашему макросу присвоена комбинация горячих клавиш для быстрого вызова.

Обратите внимание! В диалоговом окне «Параметры макроса» доступно поле для ввода его описания. Данное описание будет доступно внизу при выборе макроса из списка. Рекомендуем всегда подписывать свои макросы. Такой пользовательский тон этики работы с Excel будет высоко оценен, когда список пополниться десятками макросов.

Полезный совет! Старайтесь не использовать популярные комбинации горячих клавиш для работы с Excel: CTRL+S; CTRL+A; CTRL+T; CTRL+C; CTRL+V; CTRL+SHIFT+L и т.п. Ведь тогда их предназначение будет изменено. В окне «Параметры макроса» так же присутствует возможность использовать в комбинациях клавиш клавишу SHIFT. Как только вы придадите фокус клавиатуры для поля ввода «Сочетание клавиш: CTRL+» и попытаетесь ввести большую букву для комбинации, естественно с использованием клавиши SHIFT на клавиатуре, сразу название поля ввода поменяется на «Сочетание клавиш: CTRL+ SHIFT+».

В результате будет немного длиннее комбинация, которая позволит расширить варианты, чтобы обойти часто используемые горячие клавиши.

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

Excel позволяет пользователям запускать макросы с помощью панели быстрого доступа к инструментам. Данная панель по умолчанию находиться в самом верху окна программы.

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

  1. Щелкните на самую последнюю кнопку на панели быстрого доступа (стрелка вниз), чтобы получить доступ к меню «Настроить панель», в котором необходимо выбрать опцию «Другие команды». В результате чего откроется окно «Параметры Excel», к которому можно было получить доступ и другим путем: «ФАЙЛ»-«Параметры»-«Панель быстрого доступа». Или щелкнув правой кнопкой мышки по любой панели Excel на любой закладке и выбрать опцию «Настройка панели быстрого доступа».
  2. В левом выпадающем списке «Выбрать команду из:» выберите опцию «Макросы».
  3. В левом списке элементов ниже выберите необходимый макрос и нажмите на кнопку «Добавить». В результате чего в правом списке элементов появиться кнопка для нового инструмента быстрого запуска вашего макроса. Справа от правого списка элементов можно использовать стрелки для настройки положения и порядка расположения кнопок инструментов на панели быстрого доступа. И нажмите ОК.

Теперь на панели быстрого доступа появилась еще одна кнопка для. Достаточно нажать на нее и сразу же запуститься макрос.

Полезный совет! Чтобы изменить внешний вид кнопки для макроса в окне «Параметры Excel»-«Панель быстрого доступа», из правого списка элементов «Настройка панели быстрого доступа» следует выделить макрос и нажать на кнопку «Изменить». Будет предложена небольшая галерея иконок для нового оформления внешнего вида кнопки запуска макроса с панели инструментов.

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

Запуск макроса с помощью кнопки на рабочем листе Excel

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

  1. Выберите инструмент: «РАЗРАБОТЧИК»-«Элементы управления»-«Вставить»-«Кнопка (элемент управления формы».
  2. Выделите курсором мышки место где и как будет вставлена кнопка для запуска макроса.
  3. В появившемся окне «Назначить макрос объекту» из списка доступным макросов выберите желаемый и нажмите на кнопку ОК.
  4. Теперь нужно назначить кнопку макросу. Правой кнопкой мышки щелкните по созданной кнопке и в появившемся контекстном меню выберите опцию «Изменить текст». Удалите старый и введите новый текст «Мой макрос».

После создания кнопки можно ее настроить, изменив ее размеры и положение на листе. Для этого снова щелкните правой кнопкой мышки по кнопке, а потом нажмите клавишу Esc на клавиатуре, чтобы скрыть контекстное меню. У кнопки появляться маркеры, с помощью которых можно изменять ее размеры. Наведите курсор мышки на любой маркер на гранях или углах кнопки и удерживая левую клавишу мышки перетягивайте, изменяя таким образом ее размеры. Теперь нажмите на кнопку левой кнопкой мышки и удерживая ее перемещайте кнопку по листу документа Excel в любое другое место. Чтобы затвердить все изменения кнопки сделайте щелчок левой кнопкой мышки в любую область листа (например, по любой ячейке) вне области кнопки.

Теперь если мы нажмем на кнопку левой кнопкой мышки сразу же выполниться назначенный ей код VBA.

Добавить или изменить макрос для элемента управления на листе

Excel 2016 Excel 2013 Excel 2010 Excel 2007 Больше…Меньше

Вы можете автоматизировать элемент управления формы или ActiveX, выполнив следующие действия:

Дополнительные сведения о создании макросов см. в разделе Создание или удаление макроса.

Добавить или изменить макрос для элемента управления формы

  1. Щелкните элемент управления правой кнопкой мыши и выберите 9.0013 Назначить макрос .

    Появится диалоговое окно Назначить макросы .

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

    • org/ListItem»>

      Чтобы найти макрос в любой открытой книге, выберите All Open Workbooks .

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

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

    • Чтобы ограничить поиск макроса определенной книгой, выберите эту книгу из списка доступных имен открытых книг.

  3. Выполните одно из следующих действий:

    Назначить макрос     Выполните одно из следующих действий:

    • org/ListItem»>

      Запись нового макроса     Нажмите Записать , а когда вы закончите запись макроса, на вкладке Разработчик в группе Код нажмите Остановить запись .

    • Назначить существующий макрос     Дважды щелкните макрос в списке или введите его имя в поле Имя макроса .

    • Создать новый макрос     Нажмите Создать , а затем в редакторе Visual Basic напишите новый макрос.

      Дополнительные сведения о написании макросов см. в справке по Visual Basic.

      Изменить назначенный макрос     Выполните одно из следующих действий:

    • org/ListItem»>

      Изменить назначенный макрос     Щелкните имя макроса в поле Имя макроса , а затем нажмите Изменить .

    • Назначить другой существующий макрос     Дважды щелкните макрос в списке или введите его имя в поле Имя макроса .

Добавить или изменить макрос для элемента управления ActiveX

  1. Если вкладка Разработчик недоступна, отобразите ее.

    В Excel 2016, 2013, 2010:

    1. org/ListItem»>

      Щелкните Файл > Параметры > Настроить ленту .

    2. В разделе Настройка ленты установите флажок Разработчик и нажмите OK .

    В Excel 2007:

    1. Нажмите кнопку Microsoft Office , а затем нажмите Параметры Excel .

    2. В категории Popular в разделе Основные параметры работы с Excel выберите вкладку Show Developer в ленте и нажмите OK .

  2. org/ListItem»>

    Чтобы изменить элемент управления ActiveX, убедитесь, что вы находитесь в режиме конструктора. На вкладке Developer в группе Controls включите Design Mode .

  3. Выберите элемент управления.

    Дополнительные сведения см. в разделе Выбор или отмена выбора элементов управления на листе.

  4. на вкладке Developer , в Controls , нажмите Посмотреть код .

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

  5. В редакторе Visual Basic напишите новый макрос или измените существующий макрос.

    Дополнительные сведения о написании макросов см. в справке по Visual Basic.

  6. После завершения написания макроса щелкните Закрыть и вернуться в Microsoft Excel в меню Файл в редакторе Visual Basic.

  7. После завершения проектирования элемента управления на вкладке Разработчик в группе Элементы управления отключите Режим разработки .

Запуск макроса — служба поддержки Майкрософт

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel Starter 2010 Дополнительно…Меньше

Существует несколько способов запуска макроса в Microsoft Excel. Макрос — это действие или набор действий, которые можно использовать для автоматизации задач. Макросы записываются на языке программирования Visual Basic для приложений. Вы всегда можете запустить макрос, нажав кнопку 9Команда 0013 Macros на вкладке Developer на ленте. В зависимости от того, как макрос назначен для запуска, вы также можете запустить его, нажав комбинацию клавиш быстрого доступа, нажав кнопку на панели быстрого доступа или в пользовательской группе на ленте, или щелкнув объект, графика или контроль. Кроме того, вы можете автоматически запускать макрос всякий раз, когда открываете книгу.

Перед запуском макросов

Перед началом работы с макросами необходимо включить Разработчик вкладка.

  • Для Windows перейдите к Файл > Параметры > Настроить ленту .

  • Для Mac перейдите к Excel > Настройки… > Лента и панель инструментов .

  • Затем в Настройка ленты в разделе Основные вкладки установите флажок Разработчик и нажмите OK.

  1. Откройте книгу, содержащую макрос.

  2. На вкладке Developer в группе Code нажмите Macros .

  3. org/ListItem»>

    В поле Имя макроса щелкните макрос, который необходимо запустить, и нажмите кнопку Выполнить .

  4. У вас также есть другие варианты:

    • Параметры — Добавить сочетание клавиш или описание макроса.

    • Шаг . Откроется редактор Visual Basic для первой строки макроса. Нажатие F8 позволит вам пройти код макроса по одной строке за раз.

    • Редактировать — откроется редактор Visual Basic, в котором вы сможете отредактировать код макроса по мере необходимости. После внесения изменений вы можете нажать F5 , чтобы запустить макрос из редактора.

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

  1. На вкладке Developer в группе Code нажмите Macros .

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

  3. Щелкните Опции .

    Появится диалоговое окно Параметры макроса .

  4. В поле Клавиша быстрого доступа введите любую строчную или прописную букву, которую вы хотите использовать с клавишей быстрого доступа.

    Примечания:

    • На Windows , сочетание клавиш для строчных букв Ctrl+буква . Для прописных букв это Ctrl+Shift+Letter .

    • Для Mac сочетание клавиш для строчных букв — Option+Command+буква , но Ctrl+буква также будет работать. Для прописных букв это Ctrl+Shift+Letter .

    • org/ListItem»>

      Будьте осторожны при назначении сочетаний клавиш, поскольку они переопределяют любые эквивалентные сочетания клавиш Excel по умолчанию, когда открыта рабочая книга, содержащая макрос. Например, если вы назначите макросу Ctrl+z , вы потеряете возможность Отменить . По этой причине рекомендуется вместо этого использовать Ctrl+Shift+Прописная буква , например Ctrl+Shift+Z , у которой нет эквивалентного сочетания клавиш в Excel.

    Список сочетаний клавиш Ctrl , которые уже назначены в Excel, см. в статье Сочетания клавиш и функциональные клавиши Excel.

  5. В поле Описание введите описание макроса.

  6. Нажмите OK , чтобы сохранить изменения, а затем нажмите Отмена , чтобы закрыть диалоговое окно Macro .

Чтобы запустить макрос с помощью кнопки на панели быстрого доступа, сначала необходимо добавить кнопку на панель инструментов. Чтобы сделать это, см. Назначение макроса кнопке.

Вы можете создать пользовательскую группу, которая появится на вкладке ленты, а затем назначить макрос кнопке в этой группе. Например, вы можете добавить пользовательскую группу с именем «Мои макросы» на вкладку «Разработчик», а затем добавить макрос (который отображается в виде кнопки) в новую группу. Чтобы сделать это, см. Назначение макроса кнопке.

Запустить макрос, щелкнув область графического объекта

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

  1. Вставьте на лист графический объект, например картинку, или нарисуйте фигуру. Обычный сценарий — нарисовать фигуру прямоугольника со скругленными углами и отформатировать ее так, чтобы она выглядела как кнопка.

    Дополнительные сведения о вставке графического объекта см. в разделе Добавление, изменение или удаление фигур.

  2. Щелкните правой кнопкой мыши созданную точку доступа и выберите Назначить макрос .

  3. Выполните одно из следующих действий:

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

    • org/ListItem»>

      Чтобы записать новый макрос для выбранного графического объекта, нажмите Запись , введите имя макроса в диалоговом окне Запись макроса , а затем нажмите OK , чтобы начать запись макроса. Когда вы закончите запись макроса, нажмите Остановить запись на вкладке Разработчик в группе Код .

      Совет:   Вы также можете нажать Остановить запись в левой части строки состояния.

    • Чтобы изменить существующий макрос, щелкните имя макроса в поле Имя макроса , а затем щелкните Редактировать .

  4. Щелкните OK .

На вкладке Developer щелкните Visual Basic, чтобы запустить Редактор Visual Basic ( VBE ). Найдите в Project Explorer модуль, содержащий макрос, который вы хотите запустить, и откройте его. Все макросы в этом модуле будут перечислены на панели справа. Выберите макрос, который вы хотите запустить, поместив курсор в любое место внутри макроса, и нажмите F5 или в меню выберите Выполнить > Выполнить макрос .

Создайте событие Workbook_Open.

В следующем примере событие Open используется для запуска макроса при открытии книги.

  1. Откройте книгу, в которую вы хотите добавить макрос, или создайте новую книгу.

  2. На вкладке Developer в группе Code щелкните Visual Basic .

  3. В окне Project Explorer щелкните правой кнопкой мыши объект ThisWorkbook и выберите View Code .

    Совет:  Если окно Project Explorer не отображается, в меню View выберите Project Explorer .

  4. В списке Object над окном кода выберите Workbook .

    Это автоматически создает пустую процедуру для события Open , например:

    Private Sub Workbook_Open()

    End Sub

  5. Добавьте в процедуру следующие строки кода:

    Private Sub Workbook_Open()
    MsgBox Date
    Worksheets(«Sheet1»). Range(«A1»).Value = Date

    3 End Sub

    3

  6. Переключитесь на Excel и сохраните книгу как книгу с поддержкой макросов (.xlsm).

  7. Закройте и снова откройте книгу. Когда вы снова открываете книгу, Excel запускает процедуру Workbook_Open , которая отображает сегодняшнюю дату в окне сообщения.

  8. Щелкните OK в окне сообщения.

    Примечание. Ячейка A1 на Листе 1 также содержит дату, полученную в результате выполнения процедуры Workbook_Open.

Нужна дополнительная помощь?

Вы всегда можете обратиться к эксперту в техническом сообществе Excel или получить поддержку в сообществе ответов.