Элементы управления VBA в Excel: формы и ActiveX

⚡ Умное резюме

Элементы управления VBA в Excel — это интерактивные элементы, такие как кнопки, флажки и текстовые поля, которые формируют графический пользовательский интерфейс. На этой странице объясняется, что такое элементы управления формами, элементы управления ActiveX, чем они отличаются друг от друга, и приводится пошаговый пример использования кнопок команд ActiveX.

  • 🧩 Элементы управления графического интерфейса пользователя: Кнопки, выпадающие списки, флажки и подписи образуют интерфейс, с которым пользователь взаимодействует на рабочем листе.
  • 🇧🇷 Элементы управления формой: Простые элементы управления, которые запускают один назначенный макрос и работают с обоими макросами. Windows и Mac Excel.
  • ⚙️ Элементы управления ActiveX: Более расширенные возможности управления с множеством свойств и событий, написанные на VBA, доступны по адресу Windows Только Excel.
  • 🔧 Необходимое условие: Включите вкладку «Разработчик» и сохраните файл как рабочую книгу с поддержкой макросов, прежде чем добавлять элементы управления.
  • ▶ ️ Пример использования ActiveX: Кнопка команды выводит строку. Guru99. Учебное пособие по VBA: ввод данных в ячейки диапазона от A1 до A10 по щелчку мыши.
  • 🇧🇷 События: Элементы управления ActiveX реагируют на такие события, как Click, Change и GotFocus, с помощью специальных подпрограмм.

Элементы управления VBA в Excel

Элементы управления VBA: элемент управления формой VBA и элементы управления ActiveX в Excel

Элементы управления формой VBA/GUI в Excel

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

S / N Управление Описание
1 Command Используется для выполнения кода
2 Комбо Box Используется для представления раскрывающегося списка пользователям.
3 Проверка Box Используется для истинных или ложных значений. Несколько флажков могут иметь истинное значение одновременно.
4 Список Box Используется для представления пользователям простого списка.
5 Текст Box Используется для приема пользовательского ввода
6 Полоса прокрутки Используется для предоставления полосы прокрутки для целей навигации.
7 Кнопка вращения Используется для увеличения или уменьшения числовых значений путем нажатия стрелок вверх или вниз, которые появляются на кнопке прокрутки.
8 Кнопка выбора Используется для истинных или ложных значений. Только одна кнопка выбора может иметь истинное значение одновременно.
9 этикетка Используется для отображения статического текста пользователю.
10 Фото товара Используется для отображения изображений
11 Toggle Кнопка Кнопка, которая находится в нажатом и ненажатом состояниях.

В элементе управления графическим интерфейсом VBA

  1. Нажмите на вкладку разработчика
  2. Нажмите кнопку «Вставить раскрывающийся список».

Вы получите следующую раскрывающуюся панель

Элементы управления формой VBA/GUI в Excel

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

Элементы управления формой VBA/GUI в Excel

Добавление элементов управления графического интерфейса в электронную таблицу

Теперь мы добавим командную кнопку в нашу книгу, для этого нам нужно

  • Нажмите «Вставить» раскрывающийся список.
  • Нажмите командную кнопку (элемент управления ActiveX), как показано на изображении выше.
  • Перетащите и нарисуйте кнопку на листе

Добавление элементов управления графического интерфейса в электронную таблицу

Настройка свойств элемента управления графического интерфейса

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

Настройка свойств элемента управления графического интерфейса

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

Настройка свойств элемента управления графического интерфейса

  • Установите для свойства name значение btnButton. Свойство name используется для идентификации элемента управления в окне кода. btn — префикс кнопки.
  • Установите для свойства Caption значение «Нажми на меня». Текст в свойстве caption — это то, что пользователи увидят на кнопке.

Закройте окно, когда закончите.

Вы получите следующие результаты.

Настройка свойств элемента управления графического интерфейса

Разница между элементами управления форм и элементами управления ActiveX.

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

Характеристика Контроль формы Элементы управления ActiveX
Установка Все просто: назначьте один макрос этому элементу управления. Для обработки событий требуется код события VBA.
Основные свойства Ограниченный набор опций Обширный набор параметров, включая шрифт, цвет и поведение.
Мероприятия Одно действие при клике Многие мероприятия, такие как Click, Change и GotFocus,
Совместимость Работает на Windows и Mac Excel Работает на Windows только Excel
лучше всего подходит для Быстрые и простые задания на рабочем листе. Интерактивные и динамические пользовательские формы

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

Предпосылка

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

Настроить Microsoft Excel
Как мы видели в предыдущем уроке, убедитесь, что на вашей ленте есть значок «Разработчик», как показано здесь.

Предпосылка

Теперь переименуйте лист 1 в «VBA». OperaКак показано на скриншоте ниже, сохраните рабочую книгу в формате «tor». Сохраните ее в файле Excel с поддержкой макросов (*.xlsm). (см. изображение ниже)

Предпосылка

После этого нажмите кнопку «Сохранить».

Как использовать элемент управления ActiveX в VBA

После подготовки рабочей книги мы можем добавить работающую кнопку ActiveX. В этом разделе, посвященном элементам управления ActiveX в Excel, мы рассмотрим, как интегрировать кнопку «commandclick» в VBA и запускать программу с помощью этой кнопки.

Шаг 1) На этом этапе нажмите кнопку «Вставить кнопку» в элементе управления Active X. Затем выберите из него опцию командной кнопки.

Используйте элемент управления ActiveX в VBA

Шаг 2) Чтобы вставить «clickcommandbutton1», перетащите курсор мыши на лист Excel.

Используйте элемент управления ActiveX в VBA

Шаг 3) Затем щелкните правой кнопкой мыши по кнопке управления и выберите пункт «Просмотр». Code».

Используйте элемент управления ActiveX в VBA

Шаг 4) Убедитесь, что вы находитесь на правильном листе. Откроется редактор кода. Введите ваш код.

  • В коде мы определили диапазон от A1 до A10.
  • Этот диапазон определяет номер ячейки на листе Excel от «A1 до A10».
  • Далее мы определяем строку "Guru«Учебное пособие по VBA 99» в коде
  • Итак, когда вы нажимаете на кнопку «Команда» в Excel, должно отобразиться следующее:Guru99 VBA Tutorial» в диапазоне ячеек «A1–A10».

Используйте элемент управления ActiveX в VBA

Шаг 5) На следующем шаге сохраните файл кода и выйдите из редактора. Чтобы вернуться к файлу Excel, щелкните значок листа Excel. Используйте элемент управления ActiveX в VBA крайний слева.

Используйте элемент управления ActiveX в VBA

Шаг 6) На листе Excel вы увидите, что вкладка «Режим разработки» включена. Убедитесь, что он выключен, иначе ваш код не будет работать.

Используйте элемент управления ActiveX в VBA

Шаг 7) Когда режим дизайна выключен, зеленая подсветка на нем не будет. Теперь вы можете нажать на командную кнопку.

Используйте элемент управления ActiveX в VBA

Шаг 8) Нажмите на кнопку «CommandButton1». Отобразится сообщение «Guru99 VBA Tutorial» в диапазоне ячеек «A1–A10».

Используйте элемент управления ActiveX в VBA

Загрузите Excel, содержащий приведенный выше код.

Скачайте указанный выше файл Excel. Code

Типичные события элементов управления ActiveX в VBA

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

  • Нажмите – Этот код выполняется при щелчке пользователя по элементу управления, как в приведенном выше примере.
  • Изменить – запускается при изменении значения элемента управления, например, typing в текстовом поле или выбрав элемент из выпадающего списка.
  • GotFocus / LostFocus – Запускается при получении или потере фокуса элементом управления, полезно для проверки ввода.
  • Нажатие клавиши – запускается при нажатии пользователем клавиши во время работы элемента управления.
  • MouseMove – запускается при наведении указателя мыши на элемент управления.
  • Дблклик – запускается при двойном щелчке пользователя по элементу управления.

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

Часто задаваемые вопросы (FAQ)

Элемент управления «Форма» запускает назначенный ему макрос и работает на основе Windows и Mac. Элемент управления ActiveX программируется на VBA, предоставляет множество свойств и событий и доступен на Windows Только Excel.

Меню «Вставка» для элементов управления «Форма» и ActiveX находится на вкладке «Разработчик», которая по умолчанию скрыта. Включите её в меню «Файл», «Параметры», «Настройка ленты», а затем установите флажок «Разработчик», чтобы элементы управления и редактор VBA стали доступны.

Скорее всего, кнопка все еще находится в режиме проектирования, о чем свидетельствует зеленая подсветка на вкладке «Разработчик». Отключите режим проектирования, чтобы элемент управления выполнял свой код обработки событий. Также необходимо сохранить рабочую книгу как файл .xlsm с поддержкой макросов.

Да. Искусственные интеллектуальные помощники, такие как Copilot, пишут подпрограммы Click или Change на основе простого описания, например, очистки диапазона при нажатии кнопки. Разработчик вставляет его в окно кода элемента управления и тестирует.

Да. Опишите необходимый ввод, и ИИ-помощник предложит подходящий элемент управления, например, комбинированный список для заданного списка или флажок для выбора значения «да» или «нет», и объяснит, как настроить его ключевые свойства.

Подведем итог этой публикации следующим образом: