
- •Теоретична довідка до пр №23
- •Код макросів та його редагування
- •Теоретична довідка до пр №24 Середовище vba
- •Процедура типу Sub і процедура типу Function
- •Теоретична довідка до пр №25-26 Об’єктна структура мови vba
- •Загальні принципи побудови vba-програм
- •Основні елементи мови програмування Visual Basic For Application (vba)
- •Стандартні математичні функції
- •Оператор введення InputBox
- •Оператор виведення MsgBox
- •Оператор виведення даних Print
- •Теоретична довідка до пр №27 Оператори управління обчислювальним процесом
- •Оператор вибору Select Case
- •Об’єкти vbа у середовищі ms Excel
- •Теоретична довідка до пр №28-29 Оператори циклів
- •Приклади програм з використанням об’єктів ms Excel у циклічних обчислювальних процесах:
- •Теоретична довідка до пр №30-31 Використання масивів та матриць
- •Теоретична довідка до пр №32 Рядкові величини
- •Теоретична довідка до Практичної роботи №32-33 Властивості екранної форми та елементів управління
- •Основні методи та події об’єктів vba
- •Створення процедур опрацювання подій
Оператор вибору Select Case
4) Оператор Select Case – оператор вибору, перевіряється одна умова і виконується один з декількох блоків операторів. Оператор заміняє серію операторів ElseIf, якщо один і той же вираз порівнюється з декількома значеннями
Синтаксис:
Select Case <вираз>
Case <значення1>
<Блок операторів 1>
Case <значення2>
<Блок операторів 2>
…
Case Else
<Блок операторів N>
End Select
Приклад.
Sub SelectCase ( )
Dim a As Single
a = InputBox("Введіть ваш зріст у сантиметрах")
Select Case a
Case Is < 150
MsgBox "У вас дуже малий зріст"
Case 151 То 178
MsgBox "Ви людина середнього зросту"
Case Is > 178
MsgBox "Ви висока людина"
End Select
End Sub
Об’єкти 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-й по порядку діапазон серед кількох виділених діапазонів.