
- •Доступ до об'єктів Excel з vb
- •1.1.Методи об'єктів
- •1.2. Контейнери і набори об'єктів
- •2. Використання властивостей, що характеризують активність
- •3.Використання властивостей, що характеризують вміст
- •4. Властивості форматування
- •5. Методи роботи з таблицями
- •Контрольні завдання по темі
- •1. Теоретичні питання
- •2. Тести
- •3. Практичні завдання
- •Вживання процедур і функцій
- •6.Передача величин процедурі
- •7. Створення і вживання функцій
- •Контрольні завдання по темі
- •1. Теоретичні питання
- •2. Тести
- •При застосуванні службового слова РаrаmArrау у списку аргументів функції/процедури перед ім'ям деякого аргументу, яка дія повинна застосовуватися для цього аргументу?
- •3. Практичні завдання
- •Оператори управління
- •1. Оператор if
- •If логічний_вираз then оператор,
- •1.1. Логічні вирази
- •1.2. Структура оператора if - then
- •2.Структура оператора Select Case
- •3. Неструктурований перехід
- •Контрольні завдання по темі
- •1. Теоретичні питання
- •2. Тести
- •3. Практичні завдання
- •Цикли і структури, що повторюються
- •1. Вживання обчислюваних циклів
- •1.1. Циклічна структура for – next
- •1.2. Цикл for each – next
- •2. Логічні цикли
- •2.1. Вживання циклу do - loop
- •2.2. Вживання циклів while - wend
- •Контрольні завдання по темі
- •1. Теоретичні питання
- •2. Тести
- •3. Практичні завдання
- •Вбудовані діалогові вікна
- •1. Вживання функції MsgBox()
- •1.1. Створення простого вікна повідомлення
- •1.2. Додавання командних кнопок у вікно повідомлення для створення діалогового вікна
- •1.3. Набуття значень від функції MsgBox()
- •2. Вживання функції InputBox()
- •3. Вживання діалогових вікон інших типів
- •4. Виклик діалогових вікон додатку
- •Контрольні завдання по темі
- •1. Теоретичні питання
- •2. Тести
- •3. Практичні завдання
- •Література
7. Створення і вживання функцій
Функції – це процедури, що повертають результуюче значення в своєму імені.
Функція поводиться як субпроцедура. Відмінність може використовуватися безпосередньо у формулі, як змінна.
Синтаксис:
Function ім’я_функції(аргументи) As тип
…
ім’я_функції =повертаєме_значення
End Function
Процедури на відміну від функцій не можна викликати з клітин робочого аркуша, але можна викликати із інших функцій і процедур.
Приклад:
1) Функція знаходження добутку двох чисел:
Function Prodact_1(V1 As Single, V2 As Single) As Single ‘ значення функції Prodact_1
‘ дійсне число з плаваючою крапкою
Prodact_1 = V1*V2 ‘ розрахунок значення функції Prodact_1, як добуток V1, V2
End Function
2) Можна застосовувати створену функцію звертаючись або з процедури, або з іншої функції. Розглянемо приклади різних варіацій виклику створених функцій (в процедурі для отримання результату розрахунку функцій Prodact_1, Prodact_2 в вікні відладки та застосування для розрахунку нової змінної в виразі результату функцій Prodact_1 та Prodact_2)
Sub Program_1()
DIM Result As Single, VALA As Single, VALB As Single
DIM VALC As Single, VALD As Single, VALE As Single
‘ оголошення змінних Result, VALA, VALB, VALC, VALD ,VALE дійсного типу
VALA = 5
VALB = 7
VALC = 3
VALD = 12
VALE = 4
Debug.Print Prodact_1(3,5), Prodact_1(ValA,ValB) ‘ друк у вікні відладки
‘ значення функції Prodact_1, що розраховане за значеннями V1=3, V2=5, та
‘ значення функції Prodact_1, що розраховане за значеннями V1= ValA, V2= ValB
Debug.Print Prodact_2(ValA,ValB,ValC,ValD,ValE) ‘ друк у вікні відладки
‘ значення функції Prodact_2, що розраховане за значеннями п’яти елементів
‘ набору Values(), який складається з значень ValA,ValB,ValC,ValD,ValE
Result = Prodact_1(ValC,ValD) /2 + Prodact_2(ValA,ValB,ValC) ‘ розрахунок
‘ змінної Result за значеннями, що надає функція Prodact_1, яка приймає
‘ значеннями V1= ValС, V2= ValD, поділена на 2 та за значеннями, що надає
‘ функція Prodact_2, яка приймає значення для набору Values():ValA,ValB,ValC
Debug.Print Result ‘ друк у вікні відладки значення Result
End Sub
Function Prodact_2 (PаramArray Values()) As Single
‘ функція знаходження суми елементів набору невизначеної розмірності
DIM Element, Pr As Single ‘ оголошення змінної Pr
Pr = 0 ‘ початкове значення змінної Pr, що відповідає за значення суми
‘ набору Values()
FOR Each Element In Values() ‘ цикл для пошуку суми елементів набору Values()
Pr = Pr + Element
NEXT Element
Prodact_2 = Pr ‘ привласнення Prodact_2 значення знайденої суми набору
End Function
3) Можна використовувати як функцію в таблиці Excel, але для цього по-перше функція повинна розташовуватися в вікні будь якого модуля, по друге викликається через вікно списку вбудованих функцій (fx) з категорії «Определенные пользователем» (рисунок 6.1). Значення аргументам задаються шляхом введення з клавіатури або посиланням на клітини (рисунок 6.2).
Рисунок 6.1. Виклик створеної функції для любої клітини Excel
Рисунок 6.2. Застосування створеної функції для розрахунку у любій клітині Excel