- •1.1. Знайомство із клавіатурою. Робота в Windows з папками й файлами
- •1.2. Робота з файлами, папками, ярликами в Провіднику
- •1.3. Текстовий процесор Word - створення документа, його редагування й форматування
- •1.4. Текстовий процесор Word - робота з таблицями
- •1.5. Текстовий процесор Word - робота з формульним редактором, набір і редагування математичних формул
- •1.6. Текстовий процесор Word - робота із графічними об'єктами - створення малюнків
- •1.7. Табличний процесор Excel - створення й занесення даних у
- •1.8. Табличний процесор Excel – робота з майстром формул
- •1.9. Табличний процесор Excel – робота з діаграмами й графіками
- •1.10. Табличний процесор Excel – рішення пошукових завдань лінійного програмування
- •2. Програмування мовою vba
- •2.1. Вступ
- •2.2. Робота у вікні модуля. Структура програми
- •2.3. Основні типи даних
- •2.4. Змінні, масиви, константи і їхній опис
- •2.5. Операції vba
- •2.5.1. Арифметичні операції
- •2.5.2. Операції порівняння
- •2.5.3. Логічні операції
- •2.6. Стандартні функції
- •2.7. Вирази
- •2.8. Оператор присвоювання
- •2.9. Введення даних користувачем
- •2.10. Виведення даних
- •2.11. Оператори переходу. Програмування розгалужуваних обчислювальних процесів
- •If умова Then оператор
- •If умова Then
- •If умова Then
- •2.12. Оператори циклу. Програмування циклічних обчислювальних процесів
- •Dim p As Single, I As Integer, n As Variant
- •2.13. Процедури
- •1) Function Sum(n Аs Integer, a As Single) Аs Integer
- •2)Private Function f1(a As Single, ParamArray X) As Single
- •2) Ім'я Список аргументів
- •3. Список літератури
1) Function Sum(n Аs Integer, a As Single) Аs Integer
Ця функція – Public (за замовчуванням), доступна для всіх модулів. Ім'я функції – Sum, аргументи: n – цілого типу, а – числового, обидва аргументи мають кваліфікатор ByRef (за замовчуванням). Функція повертає значення типу Integer.
2)Private Function f1(a As Single, ParamArray X) As Single
Функція доступна тільки для модуля, у якому вона записана. Аргументи: а - числова змінна типу Single, х - масив довільного числа елементів типу Variant.Функція повертає значення типу Single.
Процедура Function може перебувати в будь-якому місці модуля, за винятком тіла іншої процедури. Викликається процедура по імені із вказівкою фактичних аргументів, у ролі яких можуть виступати константи, змінні, вирази. Виклик може перебувати усередині будь-якого виразу.
Виконання Function починається з першого рядка тіла процедури й триває доти, поки не буде досягнута інструкція End Function або Exit Function (вихід з Function). Далі управління передається в основну процедуру.
Процедура Function повертає в основну процедуру значення, присвоює ім'я Function оператором: ім'я = вираз. Цей оператор може бути записаний у тілі Function кілька разів, при цьому Function повертає останнє присвоєне значення. Якщо тип функції не заданий явно, то функція повертає значення типу Variant.
Формально Function повертає тільки одне значення, однак після виконання Function можна використовувати й модифікації аргументів, переданих в Function по посиланню (ByRef).
Приклад 1. Обчислити, визначення максимуму виконати в процедурі Function
Private Sub pp1()
Dim y As Single, a As Single, x As Single
a = Val(InputBox("Введіть а"))
x = Val(InputBox("Введіть x"))
y = (max(3.5, x + a) + max(x, a)) / max(x ^ 2, 120)
MsgBox "y=" & y
End Sub
Private Function max(b As Single, c As Single) As Single
If b > c Then max = b Else max = c
End Function
Приклад 2. Обчислити C = , де n>m. Визначення факторіала виконати в процедурі Function.
Private Sub pp2()
Dim n As Integer, m As Integer, c As Single
n = Val(InputBox("Введіть n"))
m = Val(InputBox("Введіть m"))
c = fact(n) / (fact(m) * fact(n - m))
MsgBox "c=" & c
End Sub
Private Function fact(n As Integer) As Single
Dim i As Integer, p As Single
p = 1
For i = 1 To n
p =p * i
Next I
fact=p
End Function
Процедура Sub.
Синтаксис процедури Sub:
[Private Public Static] Sub Ім'я([Список аргументів])
Блок операторів
End Sub
Загаловок Sub аналогічний заголовку Function, тільки в процедурі Sub не вказується тип процедури.
Процедура Sub не повертає значення, присвоює її імені, як це робить процедура Function, однак як і Function, Sub може змінювати значення аргументів, переданих до неї. Тому, якщо процедура Sub призначена для розрахунку якихось величин, то в списку аргументів процедури Sub повинні бути присутнім як вхідні аргументи, так і вихідні.
Процедура Sub, на відміну від Function, не може бути викликана по імені функції усередині виразу. Для її виклику використовується окремий оператор. Застосовуються 2 модифікації виклику:
1) Call Ім'я (Список аргументів)