0

Добавить кнопку в excel с макросом

Кнопка для вызова макроса в Excel

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

В прошлых статьях этот вопрос рассматривался вскользь. Теперь рассмотрим его более подробно и обстоятельно.

Вызывать макросы в Excel можно несколькими способами (естественно, макросы должны быть в книге):

  • вставкой кнопки;
  • сочетанием клавиш;
  • вставкой автофигуры;
  • вставкой рисунка.

Вставка кнопки.

Переходим на вкладку «Разработчик», в блоке кнопок «Элементы управления» нажимаем «Вставить», в появившемся списке выбираем вариант «Кнопка».

В выпавшем списке есть два варианта: кнопка как элемент управления формы и как элемент ActiveX. В принципе, большой разницы в выборе кнопок нет, так что возьмём кнопку из блока «Элементы управления формы».

После щелчка ничего не произойдёт, так как нужно указать место для нашей кнопки (простым выделением). На рисунке ниже будут два варианта кнопок.

Первый — это кнопка управления формы, второй — кнопка управления ActiveX.

Отличие — в добавлении вызова макроса. В первом случае нужно щёлкнуть правой кнопкой и выбрать «Назначить макрос…», во втором просто сделать двойной щелчок по кнопке и дописать вызов макроса. В моём случае это «Call DF».

Сочетание клавиш

С сочетанием клавиш всё гораздо проще. Переходим на вкладку «Разработчик», нажимаем кнопку «Макросы», в выпавшем окне выбираем макрос (DF), нажимаем кнопку «Параметры» и назначаем сочетание клавиш. Как правило это сочетание с клавишей Ctrl. Для вызова макроса нужно просто нажать назначенные клавиши.

Автофигура

Переходим на вкладку «Вставка», нажимаем кнопку «Иллюстрации», в выпавшем списке выбираем «Фигуры» и выбираем фигуру, которую хотим вставить. После выбора фигуры не забываем щёлкнуть по листу, как и в случае с кнопками.

Далее, щёлкаем правой кнопкой мышки по фигуре и используем пункт «Назначить макрос…» как и в кнопках. Выбираем наш макрос и жмём «OK».

Рисунок

С рисунками та же ситуация, что и с фигурами. Поэтому повторять порядок действий не буду. Вместо «Фигуры» нужно выбрать «Рисунки» и указать путь к любому рисунку на вашем ПК.

Далее снова щёлкаем правой кнопкой мышки и выбираем «Назначить макрос», выбираем нужный нам и нажимаем «ОК».

В итоге у нас появится книга Excel с четырьмя вариантами вызова макросов.

Скажу напоследок, что таким же способом можно назначить макрос и объекту WordArt, SmarArt рисунку, любой диаграмме.

Читайте также:  Где хранится резервная копия на андроиде

В данной статье я расскажу, как сделать кнопку для запуска своего макроса.

Файлы для скачивания:

Файл Описание Размер файла: Скачивания
Пример 14 Кб 1228

Давайте возьмем файл с предварительно записанным макросом или запишем новый макрос, как это сделать описано в статье " Как записать макрос не зная языка VBA? ".

Чтобы вставить в рабочий лист Кнопку , необходимо настроить (включить) вкладку "Разработчик" на ленте главного меню ( Как добавить вкладку "Разработчик" на ленту? ).

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

Переходим на страницу, на которой будем размещать кнопку, в главном меню во вкладке "Разработчик" нажимаем кнопку "Вставить", в выпавшем списке выбираем команду "Кнопка (элемент управления формы)"

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

Откроется диалоговое окно "Назначить макрос объекту":

В этом окне выбираем наш макрос и нажимаем "ОК":

Диалоговое окно закроется, а в указанном нами месте на листе появиться кнопка:

Щелкните по любой ячейке левой клавишей мышки, с кнопки снимется выделение:

Щелкните левой клавишей мышки по кнопке – макрос выполниться:

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

Вы можете использовать кнопку элемента управления формы или кнопку команды (элемент ActiveX) для запуска макроса, выполняющего действия при нажатии пользователем. Обе эти кнопки также называются кнопкой "Отправить", которую можно настроить для автоматизации печати листа, фильтрации данных или вычисления чисел. Как правило, кнопки элемента управления формы и кнопки элемента управления ActiveX похожи на внешний вид и функции. Однако у них есть несколько отличий, которые описаны в следующих разделах.

Кнопка (элемент управления формы)

Командная кнопка (элемент ActiveX)

В следующих разделах приведены инструкции по добавлению макроса на кнопку в Excel (для Windows или Mac).

Примечание: Элементы ActiveX не поддерживаются на компьютере Mac.

Макросы и средства VBA можно найти на вкладке разработчик , которая по умолчанию скрыта.

Первый этап — включить его. Дополнительные сведения можно найти в статье: Отображение вкладки Разработчик.

Добавление кнопки (элемент управления формы)

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

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

Назначьте кнопку макроса, а затем нажмите кнопку ОК.

Чтобы задать свойства элемента управления, щелкните ее правой кнопкой мыши и выберите пункт Формат элемента управления.

Читайте также:  Беспроводные наушники бюджетный вариант

Кнопка "добавить команду" (элемент ActiveX)

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

Щелкните на листе место, где должен быть расположен левый верхний угол кнопки.

В группе элементы управления нажмите кнопку Просмотреть код. Откроется редактор Visual Basic. Убедитесь в том, что выбран пункт в раскрывающемся списке справа. Процедура Sub CommandButton1_Click (на рисунке ниже) выполняет два макроса при нажатии кнопки: SelectC15 и хелломессаже.

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

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

При необходимости добавьте собственный код VBA.

Закройте редактор Visual Basic и щелкните режим конструктора , чтобы включить режим конструктора.

Чтобы запустить код VBA, который теперь входит в состав кнопки, щелкните только что созданную кнопку ActiveX.

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

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

Примечание: Перед тем как нажать кнопку Свойства, выделите объект, свойства которого требуется просмотреть или изменить.

Откроется диалоговое окно Свойства . Для получения дополнительных сведений о каждом свойстве выберите свойство и нажмите клавишу F1, чтобы отобразить соответствующий раздел справка по Visual Basic. Можно также ввести имя свойства в поле Поиск справки Visual Basic. В приведенной ниже таблице перечислены доступные свойства.

Загружается ли элемент управления при открытии книги. (Не учитывается для элементов ActiveX).

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

Можно ли изменять элемент управления

Имя элемента управления

Способ привязки элемента управления к расположенным под ним ячейкам (не закреплен, можно перемещать, но нельзя изменять размер, можно перемещать и изменять размер)

Можно ли выводить элемент управления на печать

Является ли элемент управления видимым или скрытым

Атрибуты шрифта (полужирный, курсив, размер, зачеркивание, подчеркивание и насыщенность)

Bold, Italic, Size, StrikeThrough, Underline, Weight (форма)

Поясняющий текст элемента управления, определяющий или описывающий его

Будет ли содержимое элемента управления переноситься по словам в конце строки

Размер и положение

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

Высота или ширина в пунктах

Height, Width (форма)

Расстояние от элемента управления до левого или верхнего края листа

Стиль фона (прозрачный или непрозрачный)

Цвет переднего плана

Наличие тени элемента управления

Точечный рисунок, отображаемый в элементе управления

Читайте также:  Зеленые сектора на новом жестком диске

Положение рисунка относительно его заголовка (слева, сверху, справа и так далее)

Клавиатура и мышь

Сочетание клавиш для элемента управления

Настраиваемый значок мыши

Тип указателя, отображаемого при наведении пользователем указателя мыши на определенный объект (стандартная, стрелка, I-образная и т. д.).

Принимает ли элемент управления фокус при щелчке.

Макросы и средства VBA можно найти на вкладке " разработчик ", которая скрыта по умолчанию, поэтому первым делом нужно включить ее.

Перейдите в раздел настройки > Excel . Панель инструментов & > ленты.

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

Добавление кнопки (элемент управления формы)

Выполните указанные ниже действия:

На вкладке разработчик нажмите кнопку .

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

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

Назначение макроса кнопке и нажатие кнопки ОК.

Чтобы задать свойства элемента управления, щелкните его правой кнопкой мыши и выберите пункт Формат элемента управления….

Кнопка добавления команды (элемент управления Visual Basic)

На вкладке разработчик нажмите кнопку .

Щелкните на листе место, где должен находиться левый верхний угол кнопки.

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

В диалоговом окне Назначение макроса нажмите кнопку создать, после чего откроется Редактор Visual Basic ( VBE) на панели с помощью следующего кода:

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

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

Добавьте собственный код VBA.

Щелкните режим конструктора , чтобы убедиться в том, что режим конструктора выключен, а затем закройте окно редактора Visual Basic.

Чтобы изменить кнопку, щелкните ее правой кнопкой мыши и выберите команду Visual Basic.

Чтобы задать свойства элемента управления, щелкните его правой кнопкой мыши и выберите пункт Формат элемента управления….

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

См. также

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

admin

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

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