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

Обновлено: 01.07.2024

Предположим, что макрос уже создан (в макрорекордере, как мы уже умеем, или средствами редактора Visual Basic, который нам предстоит освоить) и вы хотите или выполнить его один раз или настроить себе возможность вызывать его постоянно. В нашем распоряжении — множество разных способов.

Самый простой, но и самый неудобный способ — воспользоваться окном Макрос, которое можно открыть при помощи меню Сервис -> Макрос -> Макросы (см. рис. 1.1).

Рис. 1.1 Диалоговое окно Макросы

Из этого окна можно:

Выполнить — запустить макрос на выполнение;

Войти — открыть макрос в редакторе Visual Basic начать его пошаговое выполнение;

Изменить — просто открыть макрос в редакторе Visual Basic;

Создать — необходимо будет ввести имя создаваемого макроса и в редакторе Visual Basic будет автоматически создана процедура с определенным вами именем;

Удалить;

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

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

Если вы пользуетесь макросом постоянно, то можно использовать самый быстрый способ его вызова — клавиатурную комбинацию. Например, сейчас, когда я пишу эту книгу, я "положил" на клавиатурные комбинации простенькие макросы, которые вводят нужный мне текст. Если мне нужно набрать "Visual Basic", я набираю < Alt>+< V>, если Microsoft Office — < Alt>+< M> и т.п. На клавиши (правда, уже без макросов) у меня разложены и все стили — заголовки, маркированные списки и т.п. Очень удобно!

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

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

В Word это выглядит так: в меню Сервис выбираем Настройка и переходим на вкладку Команды. Затем нажимаем на кнопку Клавиатура: откроется окно Настройка клавиатуры (см. рис. 1.2)

Рис. 1.2 Окно настройки клавиатурных комбинаций

В списке Категории нужно выбрать Макросы, в списке Команды — нужный макрос, установить указатель ввода в поле Новое сочетание клавиш и нажать требуемое нам сочетание клавиш. Помимо обычных сочетаний типа <Alt>+<1>, <Alt>+<M> и т.п., можно использовать и более сложные. Например, вы используете два вида списков — маркированные и нумерованные. Для каждого из макросов, которые применяют данный тип списков, можно назначить клавиатурную комбинацию вида <Alt>+<L>,<M> или <Alt>+<L>,<N>. Это значит, что если вы вначале нажмете вместе клавиши < Alt+ L>, а затем <M>, то данный макрос (предположим, что это — применение маркированного списка) будет выполнен. Вводить такое сочетание клавиш в поле Новое сочетание клавиш нужно точно так же, как вы будете его применять.

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

В Excel кнопки Клавиатура в окне Настройка (меню Сервис -> Настройка) вы не найдете. Там придется назначать клавиатурные комбинации по другому: в меню Сервис выбрать Макрос -> Макросы, выбрать нужный макрос в списке и нажать на кнопку Параметры. Откроется окно Параметры макроса (см. рис. 1.3), в котором вы сможете выбрать нужную клавиатурную комбинацию (только в сочетании с клавишей <Ctrl>) и ввести описание макроса. На практике любое сочетание клавиш можно назначить макросу и в Excel, но простыми способами это сделать нельзя — придется писать программный код, в котором будут перехватываться события приложения.

Рис. 1.3 Диалоговое окно Параметры макроса

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

Лучший выход в такой ситуации — назначить макрос пункту меню или кнопке на панели управления. Пожалуй, назначение пункту меню даже лучше — больше возможностей упорядочить макросы и есть возможность использовать понятные названия. Однако нажимать на кнопки на панели инструментов быстрее — так что выбирайте сами, что вам больше нравится. Создание и настройка новой панели инструментов для вызова макросов в Word может выглядеть так:

  • В меню Сервис выбираем Настройка и переходим на вкладку Панелиинструментов.
  • Нажимаем на кнопку Создать и вводим название панели (например, Макросы) и выбираем тот документ, в котором она будет создана. Если мы выберем normal.dot, то меню будет доступно для всех документов Word на этом компьютере (что чаще всего и надо). Другой вариант — создать панель управления в том же документе Word, который у вас открыт. В этом случае меню будет доступно только из этого файла.

После того, как мы нажмем на кнопку OK и Закрыть, у нас будет создано новое пустое меню (которое будет находится где-нибудь прямо поверх документа). Чтобы было удобней, нужно перетащить его к стандартным панелям инструментов, а потом вновь воспользоваться командой главного меню Сервис -> Настройка. В нем нужно перейти на вкладку Команды, в списке Категории выбрать Макросы и просто перетащить на панель инструментов нужные макросы из списка Команды. Если на панель инструментов нужно поместить не один, а несколько макросов, то, возможно, удобнее будет нажать на кнопку Упорядочить команды и воспользоваться очень удобным диалоговым окном (см. рис. 1.4):

Рис. 1.4 Диалоговое окно Изменение порядка команд

Мы добавили нужные кнопки на панели инструментов, но пока они выглядят не очень интересно (например, Normal. NewMacros. Recordset). Вряд ли такое название что-то скажет пользователю. Поэтому следующее действие — настройка кнопок. Для при открытом окне Настройка (это условие обязательно!) просто щелкаем правой кнопкой мыши по кнопке на панели инструментов, которую нам надо настроить. Откроется специальное контекстное меню (см. рис. 1.5).

Рис. 1.5 Контекстное меню для настройки кнопки на панели инструментов

Что можно сделать из этого меню:

Удалить — просто удалить кнопку (для этого же можно просто перетащить ее обратно прямо на окно Настройка).

Имя — возможность ввести имя, то есть надпись на кнопке или пункте меню. Для меню использование надписи удобно, для кнопки на панели инструментов — не очень, поскольку занимает очень много места.

Копировать значок на кнопке и Вставить значок для кнопки — возможность воспользоваться понравившимся вам значком с другой кнопки;

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

Выбрать значок для кнопки — выбрать один из 42 стандартных значков. На самом деле только в Word значков, которые можно использовать — несколько тысяч. Мы поговорим о том, как их выбирать, в главе, посвященной программному созданию панелей инструментов и меню.

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

Только текст (всегда), Только текст (меню), Значок и текст — определяют, что именно из набора надпись/рисунок будет показано на кнопке. Наиболее часто используемый вариант, конечно — Основной стиль.

Начать группу — про эту возможность мы поговорим подробнее в главе про создание панелей инструментов управления и меню программным способом;

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

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

Создание меню производится немного по другому:

  • Нужно открыть то же диалоговое окно Настройка (меню Сервис -> Настройка).

В списке Категории выбрать Новоеменю.

Перетащить команду Новоеменю из списка Команды того же окошка в нужное место основного меню (см. рис. 1.6).

Рис. 1.6 Диалоговое окно Настройка

Далее точно так же при открытом окне Настройка щелкаем правой кнопкой мыши по созданному нами пункту меню и переименовываем его (в нашем примере мы назовем его Макросы.

Далее нужно нажать на кнопку Упорядочить команды. В открывшемся диалоговом окне Изменение порядка команд (см. рис. 1.7) нужно в списке Строка меню выбрать Макросы и добавить в него нужные элементы (то есть созданные вами макросы). Переименовать их можно при помощи кнопки Изменить выделенный объект прямо из этого окна.

Рис. 1.7 Окно Изменение порядка команд

В результате у нас может получиться очень милое меню, в котором пользователю запутаться будет трудно (см. рис. 1.8).

Рис. 1.8 Меню для запуска макросов

В Excel все очень похоже, но чуть-чуть по другому. Если в Excel мы откроем окно настройка (меню Сервис -> Настройка) и в списке Категории выберем Макросы, то вместо списка макросов в списке Команды будет две возможности: Настраиваемая команда меню и Настраиваемая кнопка (см. рис. 1.9).

Рис. 1.9 Создание кнопки для запуска макроса в Excel

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

Для создания нового меню в Excel нужно точно так же создать новое меню, как в Word, а потом нажать на кнопку упорядочить команды и добавить в этом меню несколько элементов Настраиваемая команда меню. Их реальная настройка (в том числе и назначение макросов) производится по нажатию на кнопку Изменить выделенный объект.

В подавляющем большинстве остальных приложений Office ( PowerPoint, Project, Outlook и т.п.) работа с макросами производится так же, как и в Word.

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

Есть еще одна специальная возможность для запуска макросов: сделать так, чтобы они запускались при возникновении специального события. Таким событием может стать, например, внесение изменений на лист Excel, открытие книги Excel или документа Word и т.п. Подробнее про работу с событиями будет рассказано в соответствующей главе. Однако можно обеспечить автоматический запуск макроса и без программирования: достаточно просто назначить ему специальное имя. Например, для Word список таких специальных названий представлен в Табл. 1.1.

Для запуска процедур и макросов обычно используется событие кнопки – Click.

Свойства элемента CommandButton

Свойство Описание
AutoSize Автоподбор размера кнопки. True – размер автоматически подстраивается под длину введенной надписи (заголовка). False – размер элемента управления определяется свойствами Width и Height.
BackColor Цвет элемента управления CommandButton.
Caption Надпись (заголовок) – текст, отображаемый на кнопке.
ControlTipText Текст всплывающей подсказки при наведении курсора на кнопку.
Enabled Возможность взаимодействия пользователя с элементом управления CommandButton. True – взаимодействие включено, False – отключено (цвет надписи становится серым).
Font Шрифт, начертание и размер текста надписи.
Height Высота элемента управления.
Left Расстояние от левого края внутренней границы пользовательской формы до левого края элемента управления.
Picture Добавление изображения вместо текста заголовка или дополнительно к нему.
PicturePosition Выравнивание изображения и текста на кнопке.
TabIndex Определяет позицию элемента управления в очереди на получение фокуса при табуляции, вызываемой нажатием клавиш «Tab», «Enter». Отсчет начинается с 0.
Top Расстояние от верхнего края внутренней границы пользовательской формы до верхнего края элемента управления.
Visible Видимость элемента управления CommandButton. True – элемент отображается на пользовательской форме, False – скрыт.
Width Ширина элемента управления.
WordWrap Перенос текста заголовка на новую строку при достижении ее границы. True – перенос включен, False – перенос выключен.

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

Пример кнопки с надписью и изображением

Примеры кода VBA Excel с кнопкой

Изначально для реализации примеров на пользовательскую форму UserForm1 добавлена кнопка CommandButton1.

Пример 1

Изменение цвета и надписи кнопки при наведении на нее курсора.

Условие примера 1

  • Действия при загрузке формы: замена заголовка формы по умолчанию на «Пример 1», замена надписи кнопки по умолчанию на «Кнопка», запись цвета кнопки по умолчанию в переменную уровня модуля.
  • Сделать, чтобы при наведении курсора на кнопку, она изменяла цвет на зеленый, а надпись «Кнопка» менялась на надпись «Нажми!»
  • Добавление кода VBA Excel, который будет при удалении курсора с кнопки возвращать ей первоначальные настройки: цвет по умолчанию и надпись «Кнопка».

Решение примера 1

1. Объявляем в разделе Declarations модуля пользовательской формы (в самом начале модуля, до процедур) переменную myColor:

В этой статье мы познакомимся с классом CommandButton VBA языка, который отвечает за создание и настройку кнопки. В предыдущей статье я описал компонент Label, тут, в примерах, я его тоже буду использовать, просто хочу пойти по принципу – постепенно усложняем код и увеличиваем код.

Скажу честно, мне намного интересней описывать синтаксис самого языка, чем работу визуальными элементами. Компонент vba - CommandButton обладает следующими основными свойствами:

Cancel – данное свойство актуально, если пользователю нужно подтвердить или отменить выбор. Так если мы создадим кнопку с именем Отмена, и при нажатии на нее должно произойти закрытие формы, то если задано значении true для данного свойства - кнопка будет нажиматься автоматически при нажатии на клавишу Esc.

Caption – собственно, надпись на кнопке

Name – имя объекта CommandButton vba языка, как правило имя аналогично названию класса (CommandButton1, CommandButton2, … , CommandButtonN). Лучше устанавливать что то более понятное, например, bOk, bEsc, bSumm и так далее.

Default - при значении в true, произойдет автоматическое нажатие кнопки при нажатии на клавиатуре клавиши Enter.

Picture – позволяет указать путь к пиктограмме, которая будет отображаться вместо надписи на CommandButton.

Enable – определяет активность (true) или неактивность (false) объекта для класса CommandButton vba языка.

Visible – как и для остальных объектов, свойство позволяет скрыть (false) или показать (true) элемент управления.

Accelerator – позволяет задать комбинацию клавиш для данного элемента управления. Вы просто прописываете имя клавиши, комбинация осуществляется вместе с клавишей Alt.

И так, теперь приступим к практике.

Добавляем компонент:

Откройте редактор VBA (Alt +F11) и добавьте в проект новый модуль (Insert/Module) и форму (Insert/UserForm). Великолепно, в окне проектов откройте добавленный объект класса UserForm, в окне Свойств установите следующие значения:

  • Caption – “Работа с кнопками”
  • Height – 147.75
  • Width – 300.75

Хорошо, теперь в окне ToolBox (View/ToolBox) выберите элемент управления Label и добавьте его на форму, установите следующие значения:

  • Caption – оставляем пустым.
  • Height – 24
  • Width – 282
  • Left – 6
  • Top - 6

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

  • Name – Button1, Button2 и Button3
  • Caption – Кнопка 1, Кнопка 2 и Кнопка 3
  • Height – для всех 24
  • Width – для всех 72
  • Top – для всех 48
  • Left – 18, 108 и 198

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

  • Name – ButtonExit и ButtonNoActive
  • Caption – Выход и Неактивная
  • Height – для всех 24
  • Width – для всех 120
  • Top – для всех 90
  • Left – 18и 156

Для кнопки под именем ButtonNoActive установите свойство Enable в false.

Хорошо, мы подготовили форму и все нужные нам элементы управления, теперь давайте определимся с целью:

При нажатии на первые три кнопки класса vba CommandButton, в поле Label должны отображается надписи вида “нажата такая-то …”, плюс, цвет текста должен тоже измениться. Одна из нижних кнопочек должна отвечать за выход, а другая будет всегда неактивной.

Теперь давайте приступим к программированию, в редакторе кода для модуля как всегда пишем:

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

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

Тут происходит обработка события Click для ButtonExit, Unload Me – отвечает за удаление из памяти (закрытие) текущего объекта (UserForm), проще говоря, “Выход”.

Обработка события Activate для класса UserForm – как только запустится макрос, в поле Надпись появится заданный текст, размером в 20, черного цвета, он будет расположен по центру.

Последние три процедуры отвечают за обработку одинарного клика по трем кнопкам, что находятся сразу под надписью. Будет меняться текст Надписи и его цвет. И так, в этой статье мы рассмотрели класс CommandButton языка VBA.

Спасибо за внимание. Автор блога Владимир Баталий

Задача: в предыдущей заметке мы рассказали, как запускать макросы клавиатурными сокращениями. Можно ли для этой цели использовать кнопки на листе?

Решение: существует множество способов запустить макрос кнопкой (рис. 1).

Рис. 1. Вы можете запустить макрос с помощью любого из этих элементов

Рис. 1. Вы можете запустить макрос с помощью любого из этих элементов

Способ 1. Элемент управления формы Кнопка

В Excel 2007 или более поздней версии перейдите на вкладку РАЗРАБОТЧИК. В области Элементы управления кликните на кнопке Вставить, в раскрывающемся списке выберите значок Кнопка (рис. 2). Перетащите значок на лист, и нарисуйте кнопку. Когда вы закончите отрисовывать кнопку, появится диалоговое окно Назначить макрос объекту. Выберите макрос и нажмите Ok.

Рис. 2. Вставка кнопки, как элемента управления формы

Примечание. Если вы не видите вкладку РАЗАБОТЧИК, пройдите по меню ФАЙЛ –> Параметры. Перейдите на вкладку Настроить ленту, и в правой части окна Параметры ExcelОсновные вкладки поставьте галочку напротив Разработчик.

Кнопка по умолчанию имеет название Кнопка 1. Чтобы изменить имя: нажмите Ctrl и кликните на кнопке (это позволит сделать кнопку активной без запуска макроса). Удалите текст с названием кнопки и наберите новое название. Вы можете изменить тип и размер шрифта, выравнивание и цвет текста. Если в будущем вы захотите изменить макрос, назначенный кнопке, кликните на ней правой кнопкой мыши и выберите опцию Назначить макрос.

Способ 2. Кнопка ActiveX

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

Перейдите на вкладку РАЗРАБОТЧИК. В области Элементы управления кликните кнопку Вставить, и в раскрывшемся списке выберите значок Кнопка (рис. 3). Нажмите на пиктограмму Кнопка и перетащите ее на рабочий лист. Обратите внимание, что вы находитесь в режиме конструктора.

Рис. 3. Вставка кнопки, как элемента ActiveX

Кликните на Кнопке правой кнопкой мыши, и выберите опцию Свойства. Появится окно Properties (свойства, рис. 4). Находим строку для заголовка – Caption. Удалите текст CommandButton3 [1] и наберите Выполнить! Кнопка ActiveX. Вы также можете заменить шрифт Arial на Calibri. Вы также можете изменить внешний вид кнопки с помощью таких свойств, как BackColor и ForeColor; можете добавить изображение на кнопку (свойство Picture) и т.д. Эти особенности делают элементы управления ActiveX намного более гибкими, чем элементы управления формы. Закройте окно свойств, кликнув на крестик в правом верхнем углу.

Рис. 4. Свойства Кнопки ActiveX

Оставаясь в режиме конструктора, кликните правой кнопкой мыши, и выберите опцию Исходный текст. Вы перейдете в окно редактора VBA в процедуру Private Sub CommandButton3_Click (рис. 5). В настоящий момент процедура не выполняет никакой код (она пустая). Обратите внимание, что код «живет» не в отдельном модуле, а в листе книги.

Рис. 5. Редактирование кода VBA, ассоциированного с Кнопкой ActiveX

Рис. 5. Редактирование кода VBA, ассоциированного с Кнопкой ActiveX

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

Рис. 6. Процедура Private Sub CommandButton3_Click будет исполнять макрос TestMacro

Вернитесь из редактора VBA назад на лист Excel. Выйдите из режима конструктора, кликнув на одноименную кнопку на ленте.

Примечание. Сам макрос TestMacro предельно прост. Он выводит на экран окно Макрос выполнен. При этом код макроса, как и положено, размещен в модуле VBA.

MsgBox " Макрос выполнен "

Способ 3. Любая фигура, картинка, рисунок SmartArt, Clip Art

Поместите объект на лист Excel. Щелкните правой кнопкой мыши на объекте и выберите команду Назначить макрос. В окне Назначить макрос объекту выберите макрос и нажмите Ok.

Способ 4. С помощью гиперссылки

Настройка макроса для запуска с помощью гиперссылки довольно сложна, но интересна. Для начала введите какой-нибудь текст в ячейку — например, Запуск макроса гиперссылкой. Затем на вкладке ВСТАВКА выберите команду Гиперссылка, и в окне Изменение гиперссылки введите адрес ячейки, в которой введен текст. В нашем примере – это В28. Это позволит при нажатии гиперссылки остаться в ячейке.

Рис. 7. Замкните гиперссылку саму на себя

Рис. 7. Замкните гиперссылку саму на себя

Перейдите в редактор VBA. В окне проекта (VBAProject) найдите строку с листом Excel, на котором находится гиперссылка. В нашем примере лист называется Sheet1 (Рис. 1). Кликните на этой строке правой кнопкой мыши, и выберите команду View Code (рис. 8).

Рис. 8. Код для перехвата нажатия гиперссылки должен быть расположен на листе

Откроется панель кода для листа Sheet1 (Рис. 1). Если вы ранее выполняли действия, описанные выше в разделе Способ 2. Кнопка ActiveX для запуска макроса, то вверху окна будет размещено три строчки кода (см. рис. 6). Если вы не делали этого, окно будет пустым. В любом случае, воспользуйтесь двумя выпадающими меню в верхней части окна. В левом списке выберите Worksheet, в правом – FollowHyperlink. У вас появится заготовка процедуры Worksheet_FollowHyperlink перехватывающей событие Нажатие гиперссылки (рис. 9).

Рис. 9. Настройка заготовки кода путем выбора объекта – Worksheet и события – FollowHyperlink

Каждый раз, когда кто-то нажмет вашу гиперссылку, запустится эта процедура. Целевая переменная процедуры – ByVal Target As Hyperlink – обеспечит срабатывание процедуры только когда нажата ячейка с целевым текстом. Если на странице только одна гиперссылка, вы можете ограничиться простым кодом:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

Если гиперссылок несколько, вы можете использовать свойство Target.TextToDisplay, чтобы различить гиперссылки:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

Select Case Target.TextToDisplay

Case " Run Report 2 "

Case " Run Report 2 "

Case " Run Report 3 "

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

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

Select Case Target.TextToDisplay

Резюме: запуск макроса кнопкой может быть выполнен с помощью элементов управления формы, элементов ActiveX, фигуры SmartArt, гиперссылки и др.

[1] В процессе написания заметки я тестировал те или иные возможности, поэтому моя кнопка имеет номер 3. Если вы выполняете операцию создания Кнопки ActiveX впервые, ваша Кнопка будет иметь имя CommandButton1

1 комментарий для “Запуск макроса кнопкой”

А как сделать кнопку в таблице что бы просто при клике выходить на определенный адрес в интернете?

Читайте также: