Робота з UserForms в Excel 2016 VBA

Кожне діалогове вікно Excel, яке ви створюєте у VBA, зберігається у власному об’єкті UserForm — одне діалогове вікно на форму користувача. Ви створюєте та отримуєте доступ до цих форм користувача у редакторі Visual Basic.

Вставлення нової форми користувача

Вставте об’єкт UserForm, виконавши такі дії:

Активуйте VBE, натиснувши Alt+F11.

Виберіть книгу, яка буде містити форму користувача у вікні проекту.

Виберіть «Вставка» → «Форма користувача».

VBE вставляє новий об’єкт UserForm, який містить порожнє діалогове вікно.

Ось UserForm — порожнє діалогове вікно. Ваше завдання, якщо ви вирішите його прийняти, полягає в тому, щоб додати деякі елементи керування до цієї форми користувача.

Робота з UserForms в Excel 2016 VBA

Новий об’єкт UserForm.

Додавання елементів керування до форми користувача

Коли ви активуєте форму користувача, VBE відображає панель інструментів у плаваючому вікні. Ви використовуєте інструменти на панелі інструментів, щоб додати елементи керування до своєї форми користувача. Якщо з якихось причин панель інструментів не з’являється під час активації форми користувача, виберіть «Перегляд» → «Панель інструментів».

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

Ось список різних інструментів, а також їх можливості.

Контроль Що воно робить
Етикетка Показує текст
Текстове вікно Дозволяє користувачеві вводити текст
ComboBox Відображає спадний список
ListBox Відображає список елементів
Прапорець Надає такі параметри, як увімкнення/вимкнення або так/ні
OptionButton Дозволяє користувачеві вибрати один з кількох варіантів; використовуються в
групах з двох і більше
ToggleButton Дозволяє користувачеві вмикати або вимикати кнопку
Рамка Містить інші елементи керування
CommandButton Кнопка, яку можна натиснути
TabStrip Відображає вкладки
Багатосторінковий Контейнер із вкладками для інших об’єктів
Прокрутки Дозволяє користувачеві перетягувати панель, щоб встановити налаштування
SpinButton Дозволяє користувачеві натиснути кнопку, щоб змінити значення
Зображення Тримає зображення
RefEdit Дозволяє користувачеві вибрати діапазон

Зміна властивостей для елемента керування UserForm

Кожен елемент керування, який ви додаєте до UserForm, має властивості, які визначають, як він виглядає або поводиться. Крім того, сама UserForm має власний набір властивостей. Ви можете змінити ці властивості за допомогою вікна властивостей з влучною назвою. Це відображає вікно властивостей, коли вибрано елемент керування CommandButton.

Робота з UserForms в Excel 2016 VBA

Використовуйте вікна властивостей, щоб змінити властивості елементів керування UserForm.

При натисканні F4 з’являється вікно властивостей, а властивості, показані в цьому вікні, залежать від того, що вибрано. Якщо вибрати інший елемент керування, властивості зміняться на відповідні для цього елемента керування. Щоб приховати вікно Властивості та закрити його, натисніть кнопку Закрити в рядку заголовка. Натискання F4 завжди повертає його, коли вам це потрібно.

Властивості для елементів керування включають наступне:

  • Ім'я

  • Ширина

  • Висота

  • Значення

  • Заголовок

Кожен елемент керування має власний набір властивостей (хоча багато елементів керування мають деякі загальні властивості). Щоб змінити властивість за допомогою вікна властивостей, виконайте такі дії:

Переконайтеся, що у формі користувача вибрано правильний елемент керування.

Переконайтеся, що вікно Властивості видно.

У вікні Властивості клацніть властивість, яку потрібно змінити.

Внесіть зміни в правій частині вікна Властивості.

Якщо ви виберете саму форму користувача (не елемент керування у формі користувача), ви можете використовувати вікно властивостей, щоб налаштувати властивості форми користувача.

Перегляд вікна коду форми користувача

Кожен об’єкт UserForm має модуль Code, який містить код VBA (процедури обробника подій), який виконується, коли користувач працює з діалоговим вікном. Щоб переглянути модуль коду, натисніть F7. Вікно коду порожнє, доки ви не додасте деякі процедури. Натисніть Shift+F7, щоб повернутися до діалогового вікна.

Ось інший спосіб перемикатися між вікном коду та відображенням форми користувача: скористайтеся кнопками «Переглянути код» і «Переглянути об’єкт» у рядку заголовка вікна проекту. Або клацніть правою кнопкою миші форму користувача та виберіть Переглянути код. Якщо ви переглядаєте код, двічі клацніть ім’я форми користувача у вікні проекту, щоб повернутися до форми користувача.

Відображення форми користувача

Ви відображаєте UserForm за допомогою методу Show UserForm у процедурі VBA.

Макрос, який відображає діалогове вікно, має бути в модулі VBA, а не у вікні коду для форми користувача.

Наступна процедура відображає діалогове вікно з назвою UserForm1:

Sub ShowDialogBox()
  UserForm1.Show
Сюди можна помістити інші твердження
Кінець суб

Коли Excel відображає діалогове вікно, макрос ShowDialogBox зупиняється, доки користувач не закриє діалогове вікно. Потім VBA виконує всі інші оператори процедури. У більшості випадків у вас більше не буде коду в процедурі. Як ви побачите пізніше, ви розміщуєте свої процедури обробки подій у вікні коду для UserForm. Ці процедури запускаються, коли користувач працює з елементами керування у формі користувача.

Використання інформації з форми користувача

VBE надає ім’я для кожного елемента керування, який ви додаєте до форми користувача. Ім'я елемента керування відповідає його властивості Name. Використовуйте це ім’я, щоб посилатися на певний елемент керування у вашому коді. Наприклад, якщо ви додаєте елемент керування CheckBox до UserForm з іменем UserForm1, елемент керування CheckBox має назву CheckBox1 за замовчуванням. Ви можете використовувати поле Властивості, щоб цей елемент керування відображався з прапорцем. Або ви можете написати код для цього:

UserForm1.CheckBox1.Value = True

У більшості випадків ви пишете код для UserForm в модулі коду UserForm. Якщо це так, ви можете опустити кваліфікатор об’єкта UserForm і написати заяву таким чином:

CheckBox1.Value = True

Ваш код VBA також може перевіряти різні властивості елементів керування та виконувати відповідні дії. Наступний оператор виконує макрос з ім’ям PrintReport, якщо встановлено прапорець (з назвою CheckBox1):

Якщо CheckBox1.Value = True, то викличте PrintReport

Зазвичай доцільно змінити назву за замовчуванням, яку VBE дав вашим елементам керування, на щось більш значуще.


Як заборонити Microsoft Word відкривати файли в режимі лише для читання в Windows

Як заборонити Microsoft Word відкривати файли в режимі лише для читання в Windows

Як заборонити Microsoft Word відкривати файли в режимі лише для читання в Windows. Microsoft Word відкриває файли в режимі лише для читання, що робить неможливим їх редагування? Не хвилюйтеся, методи наведено нижче

Як виправити неправильний друк документів Microsoft Word

Як виправити неправильний друк документів Microsoft Word

Як виправити помилки під час друку неправильних документів Microsoft Word Помилки під час друку документів Word зі зміненими шрифтами, безладними абзацами, відсутнім текстом або втраченим вмістом є досить поширеними. Однак не варто

Зітріть малюнки ручкою та маркером на слайдах PowerPoint

Зітріть малюнки ручкою та маркером на слайдах PowerPoint

Якщо ви використовували перо або маркер для малювання на слайдах PowerPoint під час презентації, ви можете зберегти малюнки для наступної презентації або стерти їх, щоб наступного разу, коли ви показуватимете їх, розпочали з чистих слайдів PowerPoint. Дотримуйтесь цих інструкцій, щоб стерти малюнки пером і маркером: Стирання рядків на одній з […]

Вміст бібліотеки стилів у SharePoint 2010

Вміст бібліотеки стилів у SharePoint 2010

Бібліотека стилів містить файли CSS, файли мови розширюваної мови таблиць стилів (XSL) та зображення, які використовуються попередньо визначеними основними сторінками, макетами сторінок та елементами керування в SharePoint 2010. Щоб знайти файли CSS у бібліотеці стилів сайту видавництва: виберіть «Дії сайту»→ «Перегляд». Весь вміст сайту. З’являється вміст сайту. Бібліотека Style знаходиться в […]

Форматуйте числа в тисячах і мільйонах у звітах Excel

Форматуйте числа в тисячах і мільйонах у звітах Excel

Не перевантажуйте аудиторію гігантськими цифрами. У Microsoft Excel ви можете покращити читабельність своїх інформаційних панелей і звітів, відформатувавши числа, щоб вони відображалися в тисячах або мільйонах.

Як ділитися сайтами SharePoint і слідкувати за ними

Як ділитися сайтами SharePoint і слідкувати за ними

Дізнайтеся, як використовувати інструменти соціальних мереж SharePoint, які дозволяють особам і групам спілкуватися, співпрацювати, обмінюватися інформацією та спілкуватися.

Як перетворити дати в юліанські формати в Excel

Як перетворити дати в юліанські формати в Excel

Юліанські дати часто використовуються у виробничих середовищах як мітка часу та швидкий довідник для номера партії. Цей тип кодування дати дозволяє роздрібним продавцям, споживачам та агентам з обслуговування визначити, коли був виготовлений продукт, а отже, і вік продукту. Юліанські дати також використовуються в програмуванні, військовій справі та астрономії. Інший […]

Як створити веб-програму Access

Як створити веб-програму Access

Ви можете створити веб-програму в Access 2016. Так що ж таке веб-програма? Ну, веб означає, що він онлайн, а додаток — це просто скорочення від «додаток». Користувацька веб-програма — це онлайн-додаток для баз даних, доступ до якого здійснюється з хмари за допомогою браузера. Ви створюєте та підтримуєте веб-програму у настільній версії […]

Панель швидкого запуску в SharePoint 2010

Панель швидкого запуску в SharePoint 2010

Більшість сторінок у SharePoint 2010 відображають список посилань навігації на панелі швидкого запуску ліворуч. Панель швидкого запуску відображає посилання на пропонований вміст сайту, наприклад списки, бібліотеки, сайти та сторінки публікації. Панель швидкого запуску містить два дуже важливі посилання: Посилання на весь вміст сайту: […]

Що означають повідомлення про помилки розв’язувача в Excel?

Що означають повідомлення про помилки розв’язувача в Excel?

Для простих задач Solver в Excel зазвичай швидко знаходить оптимальні значення змінної Solver для цільової функції. Але в деяких випадках Solver має проблеми з пошуком значень змінної Solver, які оптимізують цільову функцію. У цих випадках Solver зазвичай відображає повідомлення або повідомлення про помилку, що описує або обговорює проблему, яка […]