Лекція №4-5
Тема: Технології офісного програмування(VBA)
VBA (Visual Basic for Application) - це мова програмування, підтримувана всіма застосуваннями пакета Microsoft Office 2007, до складу якого входять такі популярні застосування, як Microsoft Assess, Microsoft Excel, Microsoft PowerPoint, Microsoft Word і ін.
Макрос є засобом, за допомогою якого можна описати довільну послідовність дій користувача для її подальшого багатократного виконання.
Загальні елементи: поле Ім'я макросу - тут указується ім'я записуваного нового макросу. За умовчанням VBA поміщає в це поле значення Макрос1; поле Опис - в нього записується довільний текст, тобто коментар про те, для чого призначений даний макрос. За замовчуванням VBA заповнює це вікно інформацією про те, де і ким був створений даний макрос (дата запису макросу і ім'я користувача); Список Макрос - містить перелік тих документів, в яких створюваний макрос може зберігатися, - виберіть у ньому той документ, в якому слід зберегти створюваний новий макрос. Слід зазначити, що в Word 2007 макроси можуть зберігатися тільки у файлах документа формату. docm або у файлах шаблонів документів формату. dotm. Крім того, макрос можна зберегти в документі або шаблоні формату Word 97-2003 (. doc або. dot). У Excel 2007 макроси можна зберегти в робочій книзі формату. xlsm або. xlsb, а також документах формату Word 97 - 2003 (. xls).
1. Мова vba і її можливості
При записі макросу в будь-якому з вибраних застосувань (у Microsoft Word, Excel або PowerPoint) всі виконані вами дії будуть записані у вигляді послідовності відповідних операторів мови VBA. Вся сукупність цих операторів називатиметься початковим кодом, або кодом макросу.
Для виконання макросу в будь-якому із застосувань в Microsoft Office 2007 (Word, Excel або PowerPoint) його необхідно спочатку вибрати в списку доступних, а потім запустити.
Файл документа відповідного типу будь-якого з VBA-застосувань може містити один або декілька модулів або не містити їх взагалі. Модулям, що зберігаються в документах Word, за замовчуванням привласнюється загальна назва Project (проект), а документах Excel - VBAProject.
Об'єкт дозволяє інкапсулювати дані, що описують деякий елемент, разом з програмним кодом, призначеним для обробки цих даних, тобто об'єднати їх в щось ціле, зване об'єктом.
У кожному VBA-застосуванні є свій унікальний набір об'єктів з їх власними властивостями (характеристиками даного елементу) і методами (командами для тієї або іншої обробки цих властивостей). В результаті доступ до властивостей об'єкта (тобто характеристикам стану деякого елементу в застосуванні) можливий тільки за допомогою його власних методів (тобто спеціально підготовлених команд обробки цих властивостей).
Подія - це деяка дія, яку можна виконати відносно об'єкта і на яку, отже, необхідно запрограмувати у відповідь реакцію даного об'єкта (відгук).
2. Редактор Visual Basic
Редактор VBA (Visual Basic Editor) використовується для: створення нових модулів, редагування вже існуючих модулів; створення і редагування початкового коду макросу; створення призначених для користувача вікон; для вирішення багатьох інших завдань, які відносяться до написання і обслугову-вання програм мовою VBA.
Для кожного вікна редактора VBA існує своя комбінація швидких клавіш, за допомогою якої його можна відкрити.
Основні вікна редактора VBA:
вікно проекту (Project Explorer), що надає швидкий доступ до вікон програмного коду і призначених для користувача форм;
вікно властивостей (Properties Window), що дозволяє переглянути і змінити значення властивостей об'єкта будь-якого типу (проекту, модуля, форми), який в даний момент активний;
вікно програми (Code), що дозволяє переглядати, редагувати і створювати початковий код мовою VBA.
Меню редактора VBA:
1. Меню File (Файл) містить команди, необхідні для збереження змін в проекті VBA і виведення на екран або на друк початкового коду макросів.
2. Меню Edit (Правка) містить команди, призначені для керування початковим кодом макросу у вікні Code, а також об'єктами у формах.
3. Меню View (Вигляд) містить команди, що дозволяють виводити або прибирати з екрана різні вікна редактора VBA.
4. Команди меню Insert (Вставка) дозволяють додавати в проект різні об'єкти - процедури, модулі, форми, класи та ін.
5. Меню Format (Формат) містить команди, використовувані при створенні призначених для користувача діалогових вікон. Команди цього меню дозволяють вирівнювати об'єкти у формі по відношенню один до одного, настроювати розміри і зовнішній вигляд елементів керування, а також виконувати багато інших операцій.
6. Меню Debug (Налагодження) містить команди, призначені для тестування і налагодження макросів. Команди меню Debug дозволяють запустити макрос із заданої точки, відстежувати виконання макросу по кроках і зупиняти виконуваний макрос у будь-який момент його виконання.
7. Меню Run (Запуск) містить команди, призначені для запуску макросу на виконання, переривання або відновлення його роботи, а також для повернення перерваного макросу в початковий стан.
8. Меню Tools (Сервіс) містить, зокрема, команди, що дозволяють вибрати макрос для виконання або дістати доступ до зовнішніх бібліотек макросів. За допомогою інших команд цього меню можна отримати доступ до діалогового вікна Option (Параметри) редактора VBA і вікна властивостей проекту VBA.
9. Меню Add-Ins містить всього одну команду - Add-In Manager, при виборі якої на екрані відображається діалогове вікно Add-In Manager. У цьому вікні можна завантажувати або вивантажувати, реєструвати і визначати поведінку програм-доповнень (надбудов).
10. Окрім вказаних вище меню, в редакторі VBA є ще два додаткові меню: Window (Вікно) і Help (Довідка). Команди цих меню ідентичні командам в меню Window і Help будь-яких інших застосувань Windows.
Панелі інструментів редактора VBA:
1. Standard (Стандартна). Ця панель виводиться на екран при першому запуску редактора VBA. Панель інструментів Standard містить 19 кнопок, які виконують найрізноманітніші функції: збереження результатів роботи, додава-ння нових форм і модулів, а також редагування і виконання програм.
2. Edit (Правка). Кнопки цієї панелі інструментів дозволяють редагувати текст у вікні Code (вікно програмного коду). Вони дублюють команди меню Edit.
3. Debug (Налагодження). Кнопки цієї панелі дозволяють запустити програму на виконання, простежити за ходом її роботи, а також виявити різні помилки у налагоджуванні програм.
4. UserForm (Призначена для користувача форма). Ця панель використовується при проектуванні форм. Багато її кнопок дублюють команди меню Format.
мова програмування visual basic
Вікно Object Browser (Оглядач об'єктів) подібно вікну проектів надає користувачеві засобу швидкого доступу до об'єктів, використовуваних в VBA-програмі.
Основні компоненти вікна Object Browser:
1. Список Project/Library. У цьому списку, що розкривається, можна вибрати будь-який з проектів або бібліотек застосувань, доступних в поточному проекті. Наприклад, при роботі з документом Word, крім проекту цього документа, в списку будуть присутні бібліотеки об'єктів Word, VBA, Office, шаблону Normal і т.д. Для того, щоб побачити перелік всіх об'єктів всіх доступних бібліотек і проектів, слід вибрати в списку значення <All Libraries> (Всі бібліотеки).
2. Список Classes. У цьому списку відображається склад об'єктів конкретної бібліотеки або проекту, вибраного в даний момент в списку Project/Library. Наприклад, якщо вибрати в списку Project/Library бібліотеку Word, то в списку Classes будуть відображені всі об'єкти цієї бібліотеки, тобто повний склад об'єктів застосування Word.
3. Список Members. У цьому списку відображається перелік компонентів класу, вибраного в даний момент в списку Project/Library. Наприклад, якщо в списку Project/Library відображається склад бібліотеки Word і в даний момент вибраний клас Application, то в списку Members буде поданий список всіх компонентів (властивостей і методів) цього класу.
Вибір конкретної процедури:
1. Список General (Загальний), розташований зліва, призначений для вибору із загального списку поміщених у форму об'єктів конкретного елементу керування або самої форми. В результаті такого вибору у вікні програмного коду буде відображений текст процедури, вибраної для даного об'єкта за замовчуванням.
2. Список Declarations (Оголошення), розташований справа, містить перелік методів обробки подій, допустимих для вибраного в лівому списку об'єкта. При виборі в правому списку деякої події у вікні програмного коду з'явиться текст процедури обробки цієї події. Якщо дана процедура ще не описана, буде виведена відповідна заготовка (Макрос 3).
Вікно властивостей об'єктів Properties призначене для перегляду і зміни властивостей будь-якого активного в даний момент об'єкта (проекту, модуля, форми, елементу керування) при роботі в редакторі VBA.
