форми vba

До сих пір використовувалися діалогові вікна, які вбудовані в VBA, а саме, функції MsgBox і InputBox. Хоча MsgBox і InputBox надають програмам гнучкість, якої можуть мати тільки інтерактивні програми, їх можливості в певної міри обмежені. При розробці більш складних програм, може знадобитися виводити діалогові вікна, що дозволяють користувачам програм задавати за допомогою одного діалогового вікна кілька опцій, вибирати пункти зі списку або вводити в одному вікні кілька значень. Часто виникає необхідність замість вбудованих вікон, що належать Excel, використовувати діалогові вікна, ство-дані спеціально для розробленої програми.

VBA дозволяє створювати і застосовувати призначені для користувача діалогові вікна в написаних програмах і процедурах за допомогою додавання в проект об'єкта UserForm. Використовуючи форми користувача VBA (VBA User Forms), можна створювати діалогові вікна для виведення даних або отримання значень від користувача програми саме в тому вигляді, який потрібно програмі. Наприклад, можна вивести на екран діалогове вікно зі списком різних варіантів формату дати і надати користувачеві можливість вибрати зі списку один з форматів.

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

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

Діалогове вікно в VBA створюється додаванням в проект об'єкта UserForm. Об'єкт UserForm - це пусте діалогове вікно. Налаштування діалогового вікна можна виконати додаванням до об'єкта UserForm (зазвичай називають просто форма) елементів управління. Кожному об'єкту UserForm притаманні певні властивості, методи і події, які він успадковує від класу об'єктів UserForm. Кожен об'єкт UserForm включає в себе також модуль класу. в який можна додавати власні методи і властивості або код обробки подій форми.

Перший крок у створенні користувальницького діалогового вікна складається в додаванні до проекту нової форми (об'єкта UserForm). Форма містить робочу область, в яку можна помістити елементи, необхідні для виконання деякого діалогу користувача з додатком.

На рис. 9.9 показана додана в проект форма UserForm 1. Широка рамка навколо форми вказує на те, що форма виділена. Сітка з точок наповерхні форми допомагає вирівнювати і контролювати розміри елементів управління, які розміщені на форму, і з'являється тільки в режимі розробки. Панель елементів є «палітрою», за допомогою якої можна вибирати елементи управління і додавати їх до форми

Об'єкт UserForm можна перейменувати так само, як стандартний модуль або модуль класу. Для цього в Properties Window (вікно властивостей) треба редагувати властивість (Name) і Caption цього об'єкта.

форми vba

Мал. 9.9. Нова UserForm в режимі розробки

форми vba

Мал. 9.10. Нова UserForm в режимі запуску

Схожі статті