
- •Теоретична довідка до Практичної роботи №23
- •Код макросів та його редагування
- •Теоретична довідка до Практичної роботи №24 Середовище vba
- •Призначення елементів панелі інструментів
- •Теоретична довідка до Практичної роботи №25 Об’єктна структура мови vba
- •Загальні принципи побудови vba-програм
- •Теоретична довідка до Практичної роботи №26 Основні елементи мови програмування Visual Basic For Application (vba)
- •Теоретична довідка до Практичної роботи №27 Оператори управління обчислювальним процесом
- •Теоретична довідка до Практичної роботи №28 Оператори циклів
- •Процедура типу Sub і процедура типу Function
- •Оператор введення InputBox
- •Оператор виведення MsgBox
- •Оператор виведення даних Print
- •Теоретична довідка до Практичної роботи №29 Об’єкти vbа у середовищі ms Excel
- •Приклади:
Оператор виведення MsgBox
Цей оператор використовується для одержання від користувача відповідей (“Так” або “Ні”) на короткі повідомлення. Синтаксис:
MsgBox <повідомлення > [, число ] [, < заголовок > ]
Де <повідомлення > і < заголовок > - довільні символи, число – цифра в залежності від якої змінюється вигляд вікна (наприклад, 16 – повідомлення про помилку, 64 – інформаційне повідомлення, 3 – кнопки Да, Нет, Отмена). Повідомлення може включати арифметичний вираз, якій задається через функцію Str ().
Приклади:
1. MsgBox “Процес обчислення завершено”, 1, “Проект”
Рис. 12
2. MsgBox (“х=” + Str (x) + “ “ + ” x+sin(x)=”+Str (x+Sin(x))), , "проект"
Результатом виконання буде виведене вікно з результатом розрахунку, передбачається що значення “х” було вказано раніше :
Рис. 126
Оператор виведення даних Print
Дія цього оператора полягає у виведенні результатів роботи програми у окреме вікно Immediate Window. Синтаксис:
Debug.Print [ список елементів виведення ]
До списку елементів виведення можуть входити: константи, змінні, арифметичні вирази, послідовність символів у лапках, функції Tab, Spc, String. Елементи списку відокремлюються комою (,) або крапка з комою (;). У випадку розділення комою наступна інформація друкується з нової зони (одна зона 14 позицій),. У випадку розділення крапкою з комою наступна інформація друкується безпосередньо після попередньої. Якщо елементом списку є вираз, то спочатку система обчислює значення виразу а потім друкує результат. Функція Tab(n) – визначає номер позиції з якої відбувається друк. Функція Spc(n) – визначає кількість позицій, які треба пропустити. Функція String(n, “символ”) – визначає кількість символів, які друкуються.
Рис. 13
Теоретична довідка до Практичної роботи №29 Об’єкти vbа у середовищі ms Excel
Мова VBA містить готові об’єкти, призначені для використання в різних додатках Microsoft Office. В середовищі Microsoft Excel такими об’єктами є: книга, лист, діапазон листа, діаграма. Рядок аркуша, стовпчик, окрема клітинка також є діапазоном. Книга визначається іменем файлу. Аркуші та діаграми книги визначаються або за номером у книзі, або за іменем аркуша(діаграми). Стовпчики та рядки визначаються номером. Діапазон на аркуші визначається або координатами двох кутів діапазону, або присвоєним іменем. Клітинка визначається назвою стовпчика і номером рядка.
В мові VBA можна використовувати змінні, значенням яких служить об'єкт: книга, лист або діапазон. Для того, щоб визначити таку змінну, використовують зарезервовані слова Workbook (книга), Worksheet (лист), Range (діапазон), Chart (діаграма). Є також функції, які можуть присвоїти значення конкретного об'єкта:
Workbooks (“book1.xls) має значенням книгу у файлі з іменем “book1.xls”;
Worksheets (“Лист1”) або Worksheets (1) має значенням перший лист активної книги;
Range (“B3:G7”) має значенням діапазон активного листа з координатами B3 і G7;
Workbooks (“book1.xls) .Worksheets("Лист2").Range("М5:S2 0").
Для того, щоб у програмі змінну WH оголосити як аркуш книги, а змінну RR оголосити як діапазон, необхідно записати так:
Dim WH as Worksheet, RR as Range
‘ Присвоєння змінній значення об'єктаув VBA має спеціальний вид з використанням слова Set:
Set WH = Worksheets (“Лист2”)
Set RR = WH.Range (“A1:H8”)
Після цих команд змінна WH вказує на лист відкритої книги з іменем “Лист2”, а змінна RR відповідає діапазону A1:H8 цього листа. Тут запис WH.Range означає метод Range об'єкта WH, що повертає діапазон аркуша за його координатами.
Нижче подано перелік деяких властивостей і методів, що можна застосувати до об'єктів цих класів:
метод Activate для аркуша – робить активним даний аркуш;
властивість Cells(j,k) для аркуша означає клітинку у j-му рядку і k-му стовпчику аркуша;
властивість ActiveCell для аркуша означає поточну клітинку аркуша;
властивість Selection для аркуша означає сукупність всіх виділених діапазонів на аркуші;
метод Select для діапазону робить виділеним даний діапазон;
властивість Cells(j,k) для діапазону означає клітинку у j-му рядку і k-му стовпчику діапазону;
властивість Offset(j,k) для діапазону означає клітинку із зміщенням на j рядків і k стовпчиків від верхнього кута діапазону;
властивість Rows.Count повертає кількість рядків у діапазоні;
властивість Columns.Count повертає кількість стовпчиків у діапазоні;
властивість CurrentRegion для клітинки повертає максимальний діапазон, що містить дану клітинку і обмежений з усіх сторін пустими рядками і стовпчиками;
властивість Font діапазону або клітинки представляє собою опис шрифта для запису даних;
властивість Value для клітинки задає значення, що зберігається або обчислюється в клітинці;
метод Activate для клітинки робить цю клітинку поточною;
властивість Areas(k) означає k-й по порядку діапазон серед кількох виділених діапазонів.