Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA.doc
Скачиваний:
3
Добавлен:
17.09.2019
Размер:
696.83 Кб
Скачать

Стандартні функції vb

Під функцією чи процедурою розуміють послідовність операції, яку потрібно виконати багато разів у різних місцях додатка. Мова VB містить велику кількість стандартних функцій (function) — вбудованих формул, які виконані дії над виразами та генерують значення. Функції існують у всіх версіях мови та зберігаються в шаблонах чи додаткових макросах Word, Excel чи Access. Вони детально описані в довідниках розробниками пакету MS Office. Не можна плутати терміни функція і процедура. Зазвичай процедура виконує певне завдання (чи групу завдань), як і окрема команда меню програми. Функція оперує одним чи більше значеннями і видає деяке результуюче значення (як формула в комірці робочого аркуша Excel).

Вбудовані функції поділяються на декілька груп і використовуються для виконання таких завдань:

  • організація обміну інформацією між програмою та користувачем або документом;

  • перетворення одних типів даних у інші;

  • форматування чисел чи інших типів даних для відображення;

  • перетворення та генерації значень даних;

  • одержання інформації про файли, драйвери, диски чи середовище, в якому працює VB у даний момент часу.

Вбудовані функції поділяються на категорії за своїм призначення: діалогові, математичні, перетворення даних, дати та часу, текстові та ін. У довідниках із VB детально описано всі функції, допустимі значення аргументів та приклади застосування.

Розглянемо найбільш використовувані функції.

  • Діалогові функції введення-виведення інформації

Функція InputBox використовується для введення даних з клавіатури. Вона виводить на екран діалогове вікно, яке може містити назву й певну допоміжну інформацію (створену користувачем) та поле введення. Після появи такого вікна система переходить у режим очікування, тобто чекає команди від користувача. Після занесення інформації в поле введення та натискання кнопки Ok чи клавіші Enter, система сприймає введене значення як текст.

Функція записується в такому вигляді:

InputBox (повідомлення (,заголовок)(,текст)),

де повідомлення — текст у діалоговому вікні (максимальна довжина 1024 символи); для розділення рядків використовують символи Chr(10) та Chr(13); заголовок — назва діалогового вікна; текст — текст, який відображатиметься в полі введення за замовчуванням; якщо аргументу немає, то поле введення порожнє.

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

Функція MsgBox записується так:

MsgBox (повідомлення (,кнопки)(,заголовок)),

де повідомлення — текст у діалоговому вікні; кнопки — вираз, який вказує на кількість кнопок; тип інформаційного діалогового вікна, визначає основну (активну) кнопку та модальність вікна; заголовок — назва діалогового вікна.

Допустимі значення аргументу кнопки:

Константа

Число

Результат

Типи кнопок, які відображаються

vbOKOnly

0

Відображається лише кнопка OK

vbOKCancel

1

Відображаються кнопки OK і Cancel (Відміна)

vbAbortRetryIgnore

2

Відображаються кнопки Abort (Перервати), Retry (Повторити) Ignore (Пропустити)

vbYesNoCancel

3

Відображаються кнопки Yes (Так), No (Ні) та Cancel (Відміна)

vbYesNo

4

Відображаються кнопки Yes та No

vbRetryCancel

5

Відображаються кнопки Retry та Cancel

Тип діалогового вікна

vbCritical

16

Критичне повідомлення

vbQuestion

32

Запитання з попередженням

vbExclamstion

48

Попередження

vbInformation

64

Інформаційне повідомлення

Визначення основної кнопки

vbDefaultButton1

0

Основна є перша кнопка

vbDefaultButton2

256

Основна є друга кнопка

vbDefaultButton3

512

Основна є третя кнопка

vbDefaultButton4

768

Основна є четверта кнопка

Модальність діалогового вікна

vbApplicationModal

0

Модальне вікно на рівні програми: щоб продовжити роботу з програмою, потрібно відреагувати на дане повідомлення, тобто натиснути одну із кнопок вікна

vbSestemModal

4096

Модальне вікно на рівні системи: всі програми будуть недоступні, аж поки користувач не відреагує на дане повідомлення

Значення типу Integer, які набуває функція MsgBox після натискання відповідної кнопки діалогового вікна, подано в таблиці:

Константа

Числове значення

Натиснута кнопка

vbOK

1

OK

vbCancel

2

Cancel

vbAbort

3

Abort

vbRetry

4

Retry

vbIgnore

5

Ignore

vbYes

6

Yes

vbNo

7

No

Значення аргументу кнопки та значення, яке приймає функція після натискання відповідної кнопки, можна подавати у вигляді числа або за допомогою відповідної константи.

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

У мові VB містить стандартний набір математичних функцій, обов’язковим аргументом є числовий вираз.

Abs(х) — відображає абсолютне значення числа х;

Аtn(х) — обчислює арктангенс кута х, де х — кут у радіанах;

Cos(х) — обчислює косинус кута х, де х — кут у радіанах;

Exp(x) — обчислює значення функції ех;

Sin(x) — обчислює синус кута х, де х — кут у радіанах;

Sqr(x) — обчислює корінь квадратний числа х, якщо х від’ємне, відображає помилку;

Tan(x) — обчислює тангенс кута х, де х — кут у радіанах.

  • Функції перетворення типів

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

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

Функції дати та часу зазвичай використовуються для одержання поточної дати та часу, розбиття значення дати на її складові частини або для перетворення тексту та числа в значенні типу Date.

  • Текстові функції

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

Приклад (процедура лінійного процесу): Скласти процедуру, яка моделює роботу найпростішого касового апарата для визначення вартості товару, що обчислюється за формулою:

Вартість = Ціна * Кількість.

Позначимо величини: вартість — v, ціна — t, кількість — k.

Текст процедури:

Sub calculator()

Dim k As Integer

Dim t, v As Currency

Dim mes, style, title, rez As String

t = InputBox("Введіть ціну товару", "Ціна", "0,00")

k = InputBox("Введіть кількість", "Кількість", "0")

v = t * k

mes = "Ціна" & t & Chr(13) & "Кількість=" & k _

& Chr(13) & "Вартість=" & v

style = vbInformation + vbYesOnly

title = "Результат"

rez = MsgBox(mes, style, title)

End Sub

У процедурі змінні t, v, k описані явно, а змінні mes, style, title, rez — неявно.

У процесі виконання процедури на екрані з’являться діалогові вікна Ціна та Кількість для введення даних та вікно Результат з обчисленою вартістю.

П риклад (процедура повного розгалуження зі складеною умовою: створити процедуру для обчислення функції, заданою формулою:

.

Текст процедури:

Sub функція()

Dim x, y As Double

x = InputBox("Введіть значення х")

If x >= 100 Or x <= 10 Then

y = 2 * x + 7

Else

y = Exp(0.1 * x)

End If

MsgBox y

End Sub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]