Константа

Dim Box(5) As Currency

Масиви

Оголошуючи змінну, користувач створює одиничну поіменовану область пам'яті, а, оголошуючи масив, – створює список суміжних областей пам'яті під одним ім'ям. Для здійснення доступу до окремого елементу масиву, ім'я масиву забезпечують номером елементу масиву (індексом), який заключено в круглі дужки. Масив оголошується так само, як і будь-яка інша змінна, - за допомогою операторів Dim або Public, але після імені масиву записується одне або декілька чисел в круглих дужках, визначаючи, таким чином, кількість елементів, які може містити масив.

Наприклад:

оператор створює масив з ім'ям Box, що містить дані типу Currency. За умовчанням індекс починається з «0», тому в цьому масиві шість елементів,

Box (0), Box (1), Box (2), Box (3), Box (4), Box (5).

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

2) Dim Box (700 to 799) As Integer

створюється масив з ім'ям Box, що містить елементи типу Integer. Цей оператор задає як нижню, так і верхню межу індексу. Таким чином масив містить 100 елементів.

Box (700), Box (701), Box (702). Box (799).

3) Dim Box ( 4,1 to 3) As Single

створюється двовимірний масив чисел з плаваючою крапкою, названою Box. Оскільки це оголошення містить два індексні діапазони, масив є двовимірним. Діапазон першого індексу від 0 до 4, другого - від 1 до 3. Завдання елементу двовимірного масиву вимагає вказівки двох індексів.

Box (0,1), Box (0,2), Box (0,3)

Box (1,1), Box (1,2), Box (1,3)

Box (2,1), Box (2,2), Box (2,3)

Box (3,1), Box (3,2), Box (3,3)

Box (4,1), Box (4,2), Box (4,3)

4) Dim Свято (3 to 23,5 to 7) As Date.

можна задавати масиви і більшої розмірності, хоча важко уявити, що буде масивом з розмірністю більше 3.

Цей, наприклад, створює двовимірний масив змінних типу Date. Де для обох індексів задані верхня і нижня границі. Перший індекс змінюється від 3 до 23, другий від 5 до 7.

Свято (3,5), Свято (3,6), Свято (3,7)

Свято (4,5), Свято (4,6), Свято (4,7)

…………………………………………….

Свято (23,5), Свято (23,6), Свято (23,7)

 

Константа – це величина, яка не міняється в процесі виконання програми. Можна просто використовувати постійну величину, там, де це необхідно, але|та| не дуже легко читати програму. Щоб задати константу, використовується ключове слово Const, за яким слідує ім'я_константи, знак рівності і значення константи.

Const Red = 3, Green = 4, Blue = 5, Yellow = 6

Const ArrayLimit = 100

Const max Accounts = 1000

Перш ніж використовувати константи, їх необхідно визначити. Область видимості констант така ж, як у змінних.

Константи, визначені в модулі, доступні у всіх процедурах цього модуля.

Const Z = 100

Константи, оголошені Public, можуть використовуватися в будь-якій процедурі будь-якого модуля програми.

Загальнодоступні константи визначаються на рівні модуля таким чином:

Public Const Z = 100

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

Інтерактивна підказка описує допустимі константи, а також властивості і функції, з якими вони використовуються.

Для відображення повного списку констант можна використовувати Object Brawser, вибравши бібліотеку Excel і вказавши об'єкт Constants.

Сервис>Макрос>Редактор VB >Вид>Просмотр объектов>
библиотека Excel>Классы Constants

 

Object Browser відображає повний список констант Excel. Всі константи Excel починаються з символів XL. Вибравши бібліотеку Visual Basic forApplications і вказавши об'єкти Constans, можна побачити всі константи VB. Вони починаються з символів VB.

Вид>Просмотр объектов>библиотека VBA>Классы констант

4.3. Створення призначених для користувача типів даних

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

Наприклад, створюється база даних – телефонний довідник, яка містить поля « Ім'я», «Адреса» і «Номер телефону». Можна зберегти всю цю інформацію в окремих масивах, але набагато зручніше об'єднати все це в єдину структуру і потім створити єдиний масив таких структур.

Щоб створити структуру даних використовується оператор Type.

Type ім'я_ нового_ типу_ даних.

Ім'я змінної1 As тип змінної1

Ім'я змінно 2 As тип змінної2

. ...... ... ..... .

End Type

Наприклад:

Type Клієнт Type

Прізвище As String

Адреса As String

Місто As String

Індекс As Long

Телефон As String

End Type

Потім слід оголосити змінну цього типа перш, ніж її використовувати:

Dim Друзі (1000) As Клієнт Type

Для здійснення доступу до елементів структури необхідно вказати ім'я структури, поставити крапку і вказати ім'я елементу. Таким чином, для привласнення значень цієї структури можна використовувати, наприклад, наступні оператори:

Друзі (10). Прізвище = “Іванов І. І.

Друзі (10). Адреса = “вул|. Будьоного, д.5,кв.4”

Друзі (10). Місто = “м. Жовті Води, Україна”

Друзі (10). Телефон = 4-17-46

Ці оператори здійснюють доступ до елементу масиву Друзі з індексом 10 і привласнюють значення п'яти елементам структури.

 

4.4. Вбудовані функції

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

VB оперує цими функціями подібно до Excel з тією відмінністю, що вони завжди повертають одиничне значення. Функції Excel можуть бути застосовані до цілих масивів чисел і повертати масиви як результати. Функції VB звичайно застосовуються для обробки окремих значень і повертають окремі значення. Щоб обробити масив значень за допомогою функції Visual Basic, потрібно застосувати цю функцію до елементу окремо.

 

4.4.1. Математичні функції

Atn - повертає арктангенс числа [Y= Atn(a)];

Sin – повертає синус кута в радіанах [Y= Sin(a)] ;

Cos – повертає косинус кута в радіанах [Y= Cos(a)];

Tan – повертає тангенс кута в радіанах [Y= Tan(a)];

Exp – повертає е кута в радіанах [Y= Exp(a)];

Log – повертає натуральний логарифм числа (основа = 2,71) [Y= Log(a)]

Sgr – повертає квадратний корінь числа [Y= Sgr(a)] ;

Randomize – ініціює генератор випадкових чисел [y=Randomize(число)];

Rnd – повертає випадкове число [y= Rnd(число)];

Abs – повертає абсолютну величину числа Rnd;

Sgn – повертає знак числа [y= Sgn(a)];

Fix – округляє число з відсіканням дробової частини [y= Rnd(a)];

Int – округляє число до найближчого меншого цілого [y= Rnd(a)];

Log N (x) = log (x) / Log (n) – логарифм по основі N

 

4.4.2. Строкові функції

StrComp – порівнює два рядки;

LCose – перетворить рядок в нижній регістр;

UCose – перетворить рядок у верхній регістр;

Spase – створює рядок пропусків;

String – створює рядок символів;

Jen – визначає довжину рядка;

Instr – шукає підрядок в рядку;

Lset – вирівнює рядок по лівому краю;

Rset – вирівнює рядок по правому краю;

Left – виділяє ліву частину рядка;

Right – виділяє праву частину рядка;

Mid – виділяє або переміщає підрядок;

Ltrim – видаляє провідні пропуски;

Rtrim – видаляє завершуючі пропуски;

Trim – видаляє пропуски з двох сторін рядка;

Asc – повертає ASCI I код символу;

Chr – повертає символ за ASCI I кодом;

Str – перетворює число в рядок;

Format – перетворює число в рядок по формату;

Hex – перетворює шістнадцятирічне число в рядок;

Oct – перетворює вісімкове число в рядок;

4.4.3. Функції дати і часу

Date - встановлює або повертає поточну дату;

Time – встановлює або повертає поточний час;

Now - повертає поточні дату і час;

Date Serial – перетворює в останню дату, три цілі числа;

Date Value - перетворює в дату, символьне представлення дати;

Time Serial – перетворює часом три цілі числа (година, хв., сек.)

Time Value - символьне представлення часу;

Timer – повертає часовий інтервал від півночі попереднього дня;

Day - перетворює дату в день місяця;

Month – перетворює дату в місяць року;

Weekday - перетворює дату в день тижня;

Year – перетворює дату в рік;

Hour - перетворює дату в годину дня;

Minute – перетворює дату в хвилини в годині;

Second – перетворює дату в секунди в хвилині.

Приклади:

1) ? Format (Date, “mm/dd/yy hh :mm”)
11/19/93 виведення дати і часу по формату;

2) ? Format (Time “ hh :mm”)
00:15 виведення часу по формату;

3) ? Format (DateSerial(12,18,27), “mm/dd/yy hh :mm”)
12/27/94 00:24

4) ? Format (TimeSerial(12,18,27), “hh :mm:ss”)
12:18:27

5) Date()=”12/01/01
установка дати;

6) ?Date(Now)
19 послідовний номер дати (19-й день місяця).

Функції Day( ), Month( ), Weekday( ), Year( ), Hour( ), Minute( ), Second( ) використовують як аргумент послідовний номер дати. Вони повертають день місяця, місяць, рік і т.д. у вигляді цілого числа.

 

4.4.4. Перетворення типів даних в Visual Basic

Перетворення даних з одного типа в іншій звичайно проводиться в Visual Basic автоматично.

Коли обчислюється формула, Visual Basic перетворює всі числа в цій формулі в найбільш точний тип, обчислює формулу, а потім перетворює результат в тип змінної зліва. Користувач може використовувати вбудовані функції перетворення типів для виконання самостійних перетворень типів даних.

CBool - перетворює в тип Boolean

CCur – перетворює в тип Currency

CDate перетворює в тип Date

CDbl – перетворює в тип Double

CInt – перетворює в тип Integer

CJng – перетворює в тип Jong

CSng – перетворює в тип Single

CStr – перетворює в тип String

CVar – перетворює в тип Variant

CVErr – перетворює в тип номер помилки