- •Поняття про об’єктно-орієнтоване програмування
- •Контрольні запитання
- •Основні поняття мови vba. Алфавіт та елементи мови. Типи даних
- •Версії мови Basic. Основні поняття мови vba
- •Алфавіт та елементи мови
- •Службові слова та оператори
- •Типи даних, змінні та константи
- •Операції
- •Контрольні запитання
- •Оператори та структури мови (функції та процедури)
- •Опис та присвоєння значень змінним та константам
- •Визначення області видимості змінних та констант
- •Організація умовного та безумовного переходу
- •If умова Then оператор1 (Else оператор 2)
- •Стандартні функції vb
- •InputBox (повідомлення (,заголовок)(,текст)),
- •Організація циклів
- •Опис та присвоєння значень масивам
- •Функції та процедури, створені користувачем
- •Контрольні запитання
- •Об’єкти ms Office. Використання властивостей методів об’єктів
- •Використання об’єктів
- •Використання властивостей об’єктів
- •Використання методів об’єкта
- •Об’єкт UserForm (Форма користувача)
- •Опис об’єктних змінних
- •Посилання на об’єкти за допомогою структури With...End With
- •Контрольні запитання
- •Середовище редактора vba
- •Інтелектуальні можливості редактора коду
- •Налаштування середовища vba
- •Явний опис змінних
- •Пошук процедури у вікні редактора
- •Редагування створеної процедури
- •Друк коду процедури
- •Експорт та імпорт модуля
- •Запуск та відлагодження процедури
- •Контрольні запитання
- •Програмування в ms Access
- •Макроси та модулі в Access. Створення, редагування та запуск макросів
- •Зв’язування макросів з подіями
- •Перетворення макросів в процедуру
- •Контрольні запитання
- •Розробка інтерфейсу користувача
- •Проектування та форматування форми
- •Елементи керування
- •Контрольні запитання
- •Тема 11. Програма Супермаркет
- •11.1. Створення відомостей. Утиліти програми Супермаркет
- •Створення відомостей про товарообіг
- •Створення документів, пов’язаних з фінансовими операціями
- •Створення і друкування цінників
- •Використання довідників
- •11.2. Робота з оболонкою Пос Термінал
- •Створення товарних чеків
- •Інкасація
- •Довідник товарів. Довідник організацій. Картка організації
- •Створення звітів та протоколів
Об’єкт UserForm (Форма користувача)
VBA дозволяє створювати та застосовувати спеціальні діалогові вікна для виведення чи одержання даних. Такі діалогові вікна (часто називають VBA-формами або формами користувача — VBA UserForms) допомагають збагатити розроблюваний додаток зручним елементом, який забезпечує гнучку систему введення та виведення інформації.
Форми користувача створюють шляхом додавання в проект об’єкта UserForm. Цьому об’єкту притаманні певні властивості, методи та об’єкти.
Використання подій форм дозволяє створювати зручні додатки. В них усі дії користувача ведуть до певної реакції програми, якщо ці дії передбачені та незаблоковані. Форми та елементи керування можуть запускати на виконання певні події. Для цього створюють спеціальні процедури, які називають процедурами подій (event procedures) або процедурами обробки подій.
Усі форми VBA є модальними елементами, тобто не можна виконати жодної дії в програмі, аж поки відповідне діалогове вікно не буде закрите.
Проектування форми здійснюється шляхом додавання до об’єкта елементів керування (controls). Об’єкт UserForm може містити ті самі елементи керування, що й усі діалогові вікна програм, які працюють в ОС Windows: кнопки, перемикачі, текстові поля, списки, лінії прокручування тощо. Піктограми всіх доступних елементів знаходяться на панелі Toolbox.
Кожен елемент керування — об’єкт із певними властивостями, методами та подіями. Звернення до елемента здійснюється, в основному, через їх властивості за допомогою процедур обробки подій, написаних для кожного елемента. У довідниках наведені всі властивості та події елементів керування.
Опис об’єктних змінних
VBA підтримує спеціальний тип змінних — Object. Змінні та вирази цього типу посилаються на об’єкти VBA або на об’єкти програм (Word, Excel, Access тощо).
Для опису змінної такого типу використовують оператор Dim:
Dim myObject As Object
тут змінну myObject описано як змінну типу Object.
Об’єктним виразом називають будь-який вираз VBA, який визначає конкретний об’єкт. Тому, всі об’єктні вирази повинні зводитись до єдиного об’єктного посилання. Об’єктні вирази використовують лише для створення посилання на специфічні об’єкти в програмі.
Об’єктний вираз може містити об’єктні змінні, об’єктні посилання чи об’єктний метод або властивість.
Прикладами об’єктних виразів, які містять об’єкти Excel, є:
Application.ActiveSheet — об’єктна властивість, яка здійснює посилання на активний аркуш (ActiveSheet);
Application.Workbooks — об’єктний метод, який вказує на колекцію об’єктів — усі відкриті робочі книги (Workbooks);
NewBook — об’єктна змінна (повинна бути попередньо описана оператором Set) посилається на об’єкт NewBook.
Перед виконанням об’єктної змінної для посилання на об’єкт, потрібно задати цю змінну для того, щоб вона містила посилання на потрібний об’єкт. Для присвоєння об’єктного посилання для об’єктної змінної використовують оператор Set, який має вигляд:
Set змінна = Об’єкт
Колекція (collection) — група зв’язаних об’єктів, таких як всі робочі аркуші в книзі, всі символи в параграфі, тощо. Об’єкт у колекції називається елементом цієї колекції.
Для визначення окремого елемента в колекції використовують такий запис:
Колекція(індекс)
В Excel в ролі індексу відповідної колекції можна використовувати назву аркуша, ім’я діапазону, файлу робочої книги, кнопки панелей інструментів чи команди. У Word можна також використовувати ім’я файлу документа, назву закладки, стиля та ін.
Сама колекція є об’єктом. Колекції мають власні властивості та методи. Кожна колекція має властивість Count, яка вказує на кількість елементів у цій колекції.
Контейнер (container) — довільний об’єкт, який містить у собі один або декілька об’єктів.
Багато об’єктів містять інші об’єкти різноманітних типів. Ієрархія об’єктів та контейнерів називається об’єктною моделлю.