Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_пособие_укр.doc
Скачиваний:
4
Добавлен:
11.11.2019
Размер:
1.22 Mб
Скачать

Лабораторна робота 3 Типи змінних. Тип даних, обумовлений користувачем. Змінна типу Оbject. Константи.

У VBA існують такі типи змінних (табл.10)

Таблиця 10

Тип

Опис

Boolean

Логічний

Integer

Ціле

Long

Довге ціле

Single

З крапкою, що плаває

Double

З крапкою подвійної точності, що плаває

Currency

Грошовий

Date

Дата й час

String

Рядок змінної й постійної довжини

Object

Об'єкти

Type

Тип даних, визначений користувачем

Variant

Будь-якого з типів, крім типу, визначеного користувачем

Синтаксис опису змінних:

dim <ім'я змінної> as <тип>, <ім'я змінної> as <тип>, ...

Опис розташовується в будь-якім місці програми, до першого використання описуваної змінної.

Опис не є обов'язковий, за замовчуванням будь-яка неописана змінна має тип Variant. Цей тип корисно використовувати, якщо необхідно зберегти змінну, тип якої невідомий заздалегідь. У подібних випадках корисно також використовувати вбудовані функції перетворення типів (табл.11).

Таблиця 11

Функція

До якого типу перетворює

CBool

Boolean

CCur

Currency

CDate

Date

CLng

Long

CInt

Integer

CDbl

Double

CVar

Variant

CStr

String

Csng

Single

Також під час налагодження програм часто необхідна опція Орtіоn Ехрlісіt, що вимагає явного опису всіх змінних.

Синтаксис опису змінної типу Оbjесt:

dim < ім'я змінної> as object

set <ім'я змінної> = <ім'я типу>

Приклад 1

dim a as object

set a = worksheets(1).range (“A1”)

Швидкодія програми збільшиться, якщо під час опису використовується явна назва типу об'єкта.

Приклад 2

dim a as range

set a = range (“A1:B5”)

Наступний приклад ілюструє переваги опису змінної з точною назвою типу об'єкта. У програмі використовуються 2 змінних типу Object для обміну даними між чарунками А1 і А2 першого робочого листа. Цикл повторюється 2000 разів. У програмі використовуються вбудовані функції:

Timer - повертає число секунд, що пройшли після опівночі.

Chr (s) – повертає символ, що відповідає коду-аргументу s. Наприклад, Chr (13) – повертає переклад каретки (натискання клавіші “enter”).

Msgbox ( текст повідомлення, кнопки, заголовок вікна) – виводить діалогове вікно з текстом повідомлення. Перший елемент обов'язковий.

& - операція конкатенації рядків.

Докладніше ці й інші функції будуть розглянуті пізніше.

Приклад 3

public sub pr1()

dim a as object

dim b as object

dim c as variant 'стартовий час

dim x as integer

set a = worksheets(1).range(“A1”)

set b = worksheets(1).range(“A2”)

c = timer ‘присвоєння з поточного часу в секундах

for x = 1 to 2000

a.value = 10

b.value = a.value

next x

msgbox (timer-c) & “ seconds” ‘рахунок і висновок часу виконання

end sub

Запустимо програму 2 рази. Запишіть отримані результати.

Змінимо в програмі 2 рядки

dim a as range

dim b as range

Запустимо програму на виконання. Зафіксуємо й порівняємо результати.

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

Синтаксис:

type <ім'я типу>

<ім'я елемента> as <тип> ‘опис типів простих змінних

<ім'я елемента> [(розмірність)] as <тип>

end type

Приклад 4

type anketa

a_name as string

a_age as integer

a_birth as data

end type

sub pr2()

dim b as anketa

b.a_name = “anton”

b.a_age = 19

b.a_birth = #01/01/99#

msgbox (“прізвище” & b.a_name & chr(13) & “вік” & b.a_age & _

chr (13) & “день народження” & b.a_birth)

end sub

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

Синтаксис:

const <ім'я константи> [ as <тип>] = <вираз> ,

де <вираз> - літерал (тобто числове, строкове чи логічне значення), інша константа чи їх сполучення, що включає арифметичні й логічні операції.

Приклад 5

const rate as single = 0.2

const firm = “MMM”

У VBA є велика колекція вбудованих констант, у тому числі і з додатка Excel, які необов'язково пам'ятати. Знайти й переглянути їх можна в Object Browser. Убудовані константи VBA мають префікс vb, Excel – xl, Word – wd.

Приклад 6

Об’єкт Font має властивість Underline, що встановлює чи знімає підкреслення шрифту. Припустимими значеннями цієї властивості є убудовані константи Excel:

xlUnderlineStyleNone – немає підкреслення

xlUnderlineStyleSingle – одинарне підкреслення

xlUnderlineStyleDouble – подвійне підкреслення

та ін. Наприклад:

ActiveCell.Font.Underline=xl XlUnderlineStyleSingle

Завдання до лабораторної роботи 3

Виконати й описати результати у звіті для прикладів 3, 4

Створити свій користувальницький тип і програму, що його використовує.