Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2а VB Лекція. Обєкти і класи.doc
Скачиваний:
1
Добавлен:
08.09.2019
Размер:
208.9 Кб
Скачать

Використання макросів при написанні програм

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

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

У принципі, запис макросів не відносяться до програмування, оскільки при цьому просто фіксуються виконувані користувачем дії, тоді як сам він коди не пише. Але не дивлячись на це можливість запису макросів є вельми корисною для програміста з наступних причин:

• існує можливість записати макрос для певної дії і використовувати коди як зразок, що автоматично згенерували, для написання власних про грам.

Огляд теми

Редактор VBA є могутнім "центром управління" процесом розробки npoeктів Excel. Він дозволяє не тільки редагувати коди, але і містить в собі інструменти, призначені для управління структурою проекту і властивості об'єктів.

  • Код VBA складається з процедур, які розміщуються в модулях.

  • Вікно Project Explorer дозволяє проглянути перелік компонентів проекту і додати нові модулі.

  • Коди можуть бути повторно використані шляхом експортування модулів з одного проекту і подальшого їх імпортування в інший проект.

  • У редакторі VBA передбачений ряд додаткових можливостей, що підвищують швидкість і точність написання кодів.

  • Вікно Property Window використовується для перегляду і редагування властивостей об'єктів.

  • Макроси Excel записуються у вигляді кодів VBA, які використовуються програмістами при написанні власних програм.

  • Довідкова система редактора VBA містить інформацію про мову VBA, про об'єктну модель Excel і про можливості самого редактора.

ТЕМА 4

  • Використання властивостей і методів

  • Робота з колекціями

  • Ієрархія об'єктів

  • Об'єкт Workbook

  • Об'єкт Worksheet

Об'єктна модель Excel є основою, на якій будується програмування Excel (іншою основою є мова VВА). Додаток Excel складається з об'єктів, що забезпечують функціональність даної програми. Завдяки тому, що ці об'єкти є "відкритими" (тобто ними можна упрвлять ззовні), їх функціональні можливості використовують програми, написані на мові VВА. Сукупність об'єктів Excel, відкритих для використання іншими додатками, називається об'єктною моделлю Excel.

об'єктна модель Excel

Властивості і методи об'єктів

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

Використання об'єкту зводиться до використання його властивостей і методів.

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

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

Інші властивості доступні як для читання, так і для запису (тобто зміни), наприклад, частота, на яку налаштований радіоприймач.

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

Позначення властивостей і методів виконується в стандартному форматі:

ИмяОбоєкта.ИмяВластивості

ІмяОбоєкта.ИмяМетоду

Якщо метод здатний приймати значення параметрів, виконується це одним з трьох способів.

1) Перший спосіб полягає у вказівці цих значень в круглих дужках, причому в тому порядку, в якому були оголошені самі параметри:

ІмяОб'екта.ИмяМетода(аргументl, аргумент2 ... )

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

2) Другий спосіб передачі значень параметрів при виклику методу відрізняється від першого лише відсутністю круглих дужок:

ІмяОб'екта.ИмяМетода аргументl, аргумент2

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

3) Третій спосіб полягає у використанні іменованих аргументів і є мабуть, найбільш простим і очевидним. При виклику методу ви указуєте назви аргументів, за якими слідують оператор : = і самі передавані значення:

ІмяОб'екта.ИмяМетода имяlаргумента:=значениеlаргумента, _

имя2аргумента:=значение2аргумента ...

Наприклад: МояКнига.SаvеАs Filепаmе:="ИтоговаяТаблица.wks"

Виклик методу з використанням іменованих аргументів має дві переваги.

Перш за все, це наочність кодів програми. Ім'я кожного аргументу в якійсь мірі описує його призначення, а тому використання цього імені у момент виклику методу сприяє точнішому розумінню кодів програми.

Друга перевага даного способу полягає в його простоті. Багато методів мають велику кількість необов'язкових параметрів, і досить часто при виклику таких методів багатьом параметрам залишають значення, що використовуються за умовчанням. Якщо виклик методу здійснюється звичайним способом, параметри визначаються тільки порядком їх проходження, причому для тих з них, яким потрібно залишити значення, прийняті за умовчанням, в списку аргументів слід залишити порожнє місце і відокремити їх від інших аргументів комами. Якщо ж виклик методу виконується за допомогою іменованих аргументів, указувати необхідно тільки ті аргументи, значення яких визначаються програмою.