
- •Міністерство освіти і науки україни
- •Програмування мовою
- •У середовищі Microsoft Excel
- •1 Введення
- •2 Об'єкти Excel, їхньої властивості і методи.
- •2.1 Об'єкт Workbook і сімейство Workbooks
- •2.2 Об'єкт Worksheet і сімейство Worksheets
- •Count - повертає кількість об'єктів у наборі; у прикладі перемінної k присвоюється значення, рівне числу рядків діапазону a1:d4
- •Приклад макроса
- •3 Мова програмування vba
- •3.1 Типи перемінних, оголошення перемінних, область дії перемінних
- •Оператор присвоювання
- •Стандартні діалогові вікна
- •Умовний оператор і оператор вибору.
- •3.5 Оператори циклу
- •Оператор циклу по сімейству об'єктів.
- •4 Створення функцій і процедур користувача
- •5 Створення форм та їх використання
- •5.1 Елементи керування у формах, їхні властивості, методи, події.
- •5.2 Приклади створення форм
- •Література
Оператор присвоювання
Знак « = » є оператором присвоювання, що наказує обчислити вирази, що задані в його правій частині, і привласнити результат перемінної, ідентифікатор якої розташований у лівій частині. Наприклад, у результаті дії таких операторів
Dim x As Integer
x=2
x=x+2
перемінної x буде привласнене значення, рівне 4.
Розрізняють два оператори присвоювання:
для простих перемінних, він має вид перемінна = вираз
для перемінних об'єктного типу, він має вид Set об'єктна_перемінна = вираз наприклад,
Set r = Range(“A1:B100”). Find(2, , xlValues, xlWhole)
Перемінна r повинна бути оголошена As Object (або As Range). Їй присвоюється посилання на об'єкт (адреса об'єкта), визначений у виразі справа. Далі перемінну r можна використовувати в якості імені об'єкта при обертанні до його властивостей або методів. Наприклад, y=r. Value - взяти значення з клітини, на яку посилається перемінна r.
Вираз може бути декількох різноманітних типів. Роздивимося правила їхнього формування.
При записі арифметичних виразів використовують такі знаки математичних операцій:
[Операнд1] + [Операнд2] |
Додавання |
[Операнд1] - [Операнд2] |
Віднімання |
[Операнд1] * [Операнд2] |
Множення |
[Операнд1] / [Операнд2] |
Ділення |
[Операнд1] \ [Операнд2] |
Цілочисельне ділення |
[Операнд1] Mod [Операнд2] |
Залишок від ділення |
[Операнд1] ^ [Операнд2] |
Зведення до ступення |
Числові константи записуються в програмі через десяткову точку. Наприклад, d = 12.34. Для вказівки пріоритету операцій використовують круглі дужки. Наприклад, оператор
S=(a+b)/2
Обчисляє напівсуму двох чисел а и b.
При записі логічних виразів використовують такі знаки відношень і логічних операцій: < (менше), > (більше), <= (менше або дорівнює), >= (більше або дорівнює) , <> (не дорівнює), = (дорівнює), Is (порівняння двох операндів, що містять посилання на об'єкт), Like (порівняння двох стрічкових виразів), And (логічне І), Or (логічне Або), Not (логічне заперечення). Логічні вирази використовуються в умовних операторах або при присвоюванні значення перемінній типу Boolean. Наприклад,
Dim Pr As Boolean
Pr=(x>0) And (x<=12)
Логічні константи записуються словами - True, False.
Перемінної Pr присвоюється значення True, якщо значення х знаходиться в інтервалі від 0 до 12.
Наступий приклад демонструє перевірку умови в умовному операторі для перемінної об'єктного типу:
Dim r As Range
Set r = Range(“A1:B100”). Find(c, , xlValues, xlWhole)
If Not (r Is Nothing) Then … оператори …
Константа Nothing означає невизначене значення перемінної r - посилання на клітину.
При записі стрічкових виразів використовується тільки одна операція - &, що означає об'єднання двох текстових рядків. Наприклад,
Dim S1 As String, S2 As String
S1=”Від сесії до сесії живуть студенти весело. ”
S2=S1 & “А сесія, а сесія усього два рази в рік. ”
У перемінну S2 оператором присвоювання записано два речення.
Стрічкові константи записуються в лапках “”.
Константи типу Date (дата) записуються в штахетах: # #. Наприклад, Dim Dr As Date
Dr=#12. 05. 79#
VBA має великий список функцій для роботи з перемінними різних типів:
Ім’я функції |
Призначення функції |
|
Abs() |
Абсолютний розмір - Ix |
|
Atn() |
Arctg(x) |
|
Cos() |
Cos(x) |
|
Exp() |
Экспонента, exp(x) - ex |
|
Log() |
Логарифм натуральний x |
|
Rand() |
Випадкове число з інтервалу (0,1) |
|
Sin() |
Sin(x) |
|
Sqr() |
Квадратний корінь із x |
|
Tan() |
Tg(x) - тангенс |
|
Int() |
Ціла частина від аргументу x |
|
|
IsNull() |
Чи є перемінна порожнім |
|
IsNumeric() |
Чи є переменная числом |
|
IsObject() |
Чи є переменная об'єктом |
|
Ccur() |
Перетворить аргумент до типу грошовий |
|
Cdate() |
Перетворить аргумент до типу дата |
|
Cint() |
Перетворить аргумент до типу цілий |
|
CSng() |
Перетворить аргумент до типу речовинний |
|
CStr() |
Перетворить аргумент до типу рядок |
|
Mid(рядок,нпоз, колсимволов) |
Повертає частина рядка, що містить зазначена кількість символів |
|
Len(рядок) |
Число символів рядка |
|
Trim(рядок) |
Копія рядка без прогалин |
|
InStr(начпозиция,строк1,строка2) |
Повертає позицію входження одного рядка усередині інший |
|
Now() |
Поточна дата і час |
|
Day, Month, Year() |
День, місяць і рік для аргументу типу дата |
|
DateDiff(інтервал, дата1,дата2) |
Число тимчасових інтервалів між датами. Припустимі значення для аргументу інтервал: “d” - днів, ”m” - місяців, “q” - кварталів,”y” - років. Наприклад, DateDiff(“m”,#17. 03. 2000#, Now()) Обчисляє кількість місяців |
|
Iif(умова, выраж1, выраж2) |
Повертає одне з двох альтернативних значень виражень. |