Назначение макроса кнопке
Вы можете использовать кнопку (элемент управления формой) для запуска макроса, который выполняет действие, когда пользователь щелкает его. Например, таким образом можно автоматизировать печать листа, фильтрацию данных либо расчеты.
После создания макроса его можно назначить кнопке, нажатой для запуска макроса. Макрос можно назначить кнопке на панели быстрого доступа или кнопке в личной группе на ленте.
Если вы хотите, чтобы кнопка макроса была доступна в других книгах, назначьте ее макросу, созданному в личной книге.
Добавление кнопки макроса на панель быстрого доступа
- Откройте вкладку Файл и выберите пункт Параметры, а затем — категорию Панель быстрого доступа.
- В списке Выберите команды из щелкните Макросы.
Новая кнопка появится на панели быстрого доступа, где можно щелкнуть ее, чтобы запустить макрос.
Совет: При сохранении книги кнопки, назначенные макросам в личной книге, будут доступны в каждой открытой книге.
Добавление кнопки макроса в собственную группу на ленте
- Щелкните Файл >Параметры >Настроить ленту.
- В разделе Настройка ленты в спискеОсновные вкладки проверка поле Разработчик, если он еще не установлен.
Новая группа появится на выбранной вкладке, где можно нажать кнопку для запуска макроса.
Совет: При сохранении книги кнопки, назначенные макросам в личной книге, будут доступны в каждой открытой книге.
Более новые версии
- На вкладке Разработчик в группе Элементы управления щелкните Кнопка. Если вкладка «Разработчик» недоступна:
- Перейдите в раздел Параметры> Excel. >лента & панель инструментов.
- В разделе Настройка ленты в разделе Основные вкладки проверка поле Проверка разработчика и нажмите кнопку ОК.
Excel 2011 для Mac
- На вкладке Разработчик в группе Элементы управления формы щелкните Кнопка. Если вкладка «Разработчик» недоступна:
- В правой части ленты щелкните
Назначение макроса кнопке «Форма» или кнопке «Элемент управления»
Вы можете использовать кнопку элемента управления Форма или командную кнопку (элемент ActiveX), чтобы запустить макрос, который выполняет действие, когда пользователь щелкает его. Обе эти кнопки также называются кнопкой нажатия, которую можно настроить для автоматизации печати листа, фильтрации данных или вычисления чисел. Как правило, кнопка элемента управления «Форма» и кнопка управления ActiveX похожи по внешнему виду и функциям. Однако они имеют несколько различий, которые описаны в следующих разделах.
Кнопка (элемент управления «Форма»)
Кнопка командной строки (элемент ActiveX)
В следующих разделах вы узнаете, как добавить макрос в кнопку в Excel для Windows или Mac.
Примечание: Элементы ActiveX не поддерживаются на компьютере Mac.
Макросы и средства VBA можно найти на вкладке Разработчик , которая по умолчанию скрыта.
Первым шагом является его включение. Дополнительные сведения см. в статье Отображение вкладки Разработчик.
Добавить кнопку (элемент управления «Форма»)
- На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставка, а затем в разделе Элементы управления формами нажмите кнопку Кнопка
Добавить командную кнопку (элемент ActiveX)
- На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставка, а затем в разделе Элементы ActiveX нажмите кнопку Command Button
.
- Щелкните место на листе, в котором будет отображаться левый верхний угол кнопки команды.
- В группе Элементы управления щелкните Просмотреть код. Откроется редактор Visual Basic. Убедитесь, что в раскрывающемся списке справа выбран пункт Щелкните . Вложенная процедура CommandButton1_Click (см. рисунок ниже) выполняет следующие два макроса при нажатии кнопки: SelectC15 и HelloMessage.
- Введите имя существующего макроса в книге. Макросы можно найти, щелкнув Макросы в группе Код . Вы можете запустить несколько макросов с кнопки, введя имена макросов в отдельных строках внутри подпрограммы.
- При необходимости добавьте собственный код VBA.
. Можно также щелкнуть правой кнопкой мыши кнопку и выбрать пункт Свойства.
Примечание: Перед тем как нажать кнопку Свойства, выделите объект, свойства которого требуется просмотреть или изменить.
Описание параметра
Необходимое свойство
Загружается ли элемент управления при открытии книги. (Игнорируется для элементов ActiveX.)
Может ли элемент управления получать фокус и реагировать на события, созданные пользователем.
Можно ли изменять элемент управления
Имя элемента управления
Способ привязки элемента управления к расположенным под ним ячейкам (не закреплен, можно перемещать, но нельзя изменять размер, можно перемещать и изменять размер)
Можно ли выводить элемент управления на печать
Является ли элемент управления видимым или скрытым
Атрибуты шрифта (полужирный, курсив, размер, зачеркивание, подчеркивание и насыщенность)
Bold, Italic, Size, StrikeThrough, Underline, Weight (форма)
Поясняющий текст элемента управления, определяющий или описывающий его
Будет ли содержимое элемента управления переноситься по словам в конце строки
Размер и положение
Будет ли размер элемента управления изменяться автоматически для отображения всего содержимого
Высота или ширина в пунктах
Height, Width (форма)
Расстояние от элемента управления до левого или верхнего края листа
Форматирование
Стиль фона (прозрачный или непрозрачный)
Цвет переднего плана
Наличие тени элемента управления
Изображение
Точечный рисунок, отображаемый в элементе управления
Положение рисунка относительно его заголовка (слева, сверху, справа и так далее)
Клавиатура и мышь
Сочетание клавиш для элемента управления
Настраиваемый значок мыши
Тип указателя, который отображается при наведении указателя мыши на определенный объект (стандартный, стрелка, I-beam и т. д.).
Указывает, принимает ли элемент управления фокус при щелчке.
Макросы и средства VBA можно найти на вкладке Разработчик , которая по умолчанию скрыта, поэтому сначала необходимо включить ее.
- Перейдите в раздел Параметры > Excel. >лента & панели инструментов.
- В категории Настроить ленту в списке Основные вкладки установите флажок Разработчик, а затем нажмите кнопку Сохранить.
Добавить кнопку (элемент управления «Форма»)
-
На вкладке Разработчик нажмите кнопку Кнопка
Примечание: Если вы уже вставили кнопку, щелкните ее правой кнопкой мыши и выберите Назначить макрос.
Добавить кнопку команды (элемент управления Visual Basic)
- На вкладке Разработчик нажмите кнопку Кнопка
Примечание: Если вы уже вставили кнопку, щелкните ее правой кнопкой мыши и выберите Назначить макрос.
Sub ButtonX_Click() End Sub
- Введите имя существующего макроса в книге. Вы можете запустить несколько макросов с кнопки, введя имена макросов в отдельных строках внутри вложенной процедуры.
- Добавьте собственный код VBA.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
См. также
- Добавление или изменение макроса для элемента управления на листе
- Включение и отключение макросов в файлах Office
- Включение и отключение параметров элементов ActiveX в файлах Office
Создание кнопки и изменение ее цвета
Как создать и изменить цвет кнопки в Exel. Кнопка должна при нажатии получать надпись «Да» на зеленом фоне, а надпись «Нет» на красном фоне. А так же передавать значение Да или нет в столбец I для составления расчета. В примере это реализовано с помощью вкладку Данные и Проверка данных.
КнигаVBA.xlsx (9.6 Кб, 15 просмотров) 94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:Delphi xe2: изменение цвета кнопки, цвета рамки вокруг кнопки
изменение цвета кнопки, цвет рамки вокруг кнопки. подскажите как это сделатьИзменение цвета кнопки
Помогите разобраться Необходимо создать кнопку и изменить ее цвет Заранее спасибо.Изменение цвета кнопки
Создаю двумерный массив (матрицу) из кнопок и отображаю его. Потом по нажатии на любую из этих.3897 / 2302 / 776
Регистрация: 02.11.2012
Сообщений: 6,126Сообщение от prokudin
с помощью вкладку Данные и Проверка данных.
Это не кнопка, а выпадающий список. Как вам все таки нужно?
Ваш вариант можно дополнить закраску с помощью УФ.Регистрация: 12.07.2016
Сообщений: 49
Нет, про правила раскраски знаю. мне нужна именно кнопка. То есть в каждой строчке кнопка.
Регистрация: 12.07.2016
Сообщений: 49
Типа вот такогоКнигаVBA.xlsx (16.6 Кб, 19 просмотров) Регистрация: 12.07.2016
Сообщений: 49Как дописать код чтобы при переключении ДА/НЕТ не только менялось название кнопки, но и цвет кнопки (зеленый/красный), а так же имя кнопки передавалось в определенную ячейку на листе.
Пример моего кода:
1 2 3 4 5 6 7 8
Private Sub CommandButton1_Click() With Me.OLEObjects("CommandButton1").Obj ect .Caption = IIf(.Caption = "Да", "Нет", "Да") Range("E13:E14").Locked = .Caption = "Да" End With End Sub
Регистрация: 12.07.2016
Сообщений: 49Благодаря коллективному разуму был сотворен такой код. Но подсветка фона кнопки с надписью — НЕТ переходит только в серый цвет, а хочется чтобы она имела красный цвет. Да, в ходе различных манипуляций хотелось бы, что бы кнопка имела автоматический размер ячейки в которой она находится.
1 2 3 4 5 6 7 8 9
Private Sub CommandButton1_Click() With Me.OLEObjects("CommandButton1").Object .Caption = IIf(.Caption = "Äà", "Íåò", "Äà") Range("E13:E14").Locked = .Caption = "Äà" CommandButton1.BackColor = IIf(CommandButton1.BackColor = -2147483633, vbGreen, -2147483633) Range("A5").Value = .Caption End With End Sub
КнигаVBA1.zip (16.6 Кб, 18 просмотров) 3897 / 2302 / 776
Регистрация: 02.11.2012
Сообщений: 6,1261 2 3 4 5 6 7 8 9 10 11 12
Private Sub CommandButton1_Click() With Me.OLEObjects("CommandButton1").Object If .Caption = "Да" Then .Caption = "Нет" .BackColor = vbRed Else .Caption = "Да" .BackColor = vbGreen End If Range("E13:E14").Locked = .Caption = "Да" End With End Sub
327 / 178 / 98
Регистрация: 01.04.2020
Сообщений: 493
prokudin,
возможно вам подходят «кнопки» такого типа ? .КнигаVBA2.zip (25.0 Кб, 65 просмотров) 87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесьИзменение цвета кнопки
Пробую изменить цвет кнопки, почему-то не работает. Что я делаю неправильно? case.Изменение цвета кнопки
Снова добрый день.Как мне изменить цвет кнопки при нажатии кнопки "Themes"?Цвет окна я понял как.Изменение цвета кнопки
Как поменять цвет кнопки? Делаю так — ошибка , не компилируется. Спасибо private void.Изменение цвета кнопки
Как можно изменить цвет кнопки в Delphi? Свойства Color у неё нет, или я просто не смог найти.Изменение цвета кнопки
Как сделать, чтобы нажатие на кнопку сопровождалось изменением её цвета на момент нажатия?Изменение цвета текста кнопки
Всем доброго времени суток! Заранее спасибо за помощь. К проблеме. Есть массив кнопок, нужно.Или воспользуйтесь поиском по форуму:
Как изменить цвет фона элемента CommandButton в Excel 2010?
Добавил на лист Excel 2010 элементы кнопки CommandButton (не в форму, а просто поместил на ячейки) . Мне необходимы три кнопки с разным цветом фона, чтобы по нажатию на каждую осуществлялась фильтрация строк листа по цвету фона данной кнопки. Вопрос. Как задать нужный цвет фона у кнопки? Или что еще можете порекомендовать для решения данного задания?
Дополнен 11 лет назад
Я предполагал, что модули с программным кодом для кнопок добавляются в проект VBA для данной книги, но, к сожалению, не нашел ничего подобного в окне просмотра проекта
Голосование за лучший ответ
Есть подозрение что никак.
Но вместо кнопки можно добавить какую нибудь фигуру, например прямоугольник, задать ему нажный цвет и текст, и назначить макрос по нажатию. Будет как кнопка