- •Міністерство освіти і науки україни
- •For Application (vba) у середовищі Microsoft Excel”
- •1 Лабораторна робота №1
- •Стислі теоретичні зведення
- •Створення макросів
- •Планування макросу
- •Запис макросу
- •Виконання макросу
- •Перегляд записаного макросу
- •Завдання для самостійної роботи
- •Контрольні питання.
- •2 Лабораторна робота № 2
- •2.2 Контрольні питання
- •2.3 Приклад виконання лабораторної роботи
- •3 Лабораторна робота №3
- •Обчислити яку суму повинен заплатити клієнт, якщо він придбав товару на м гр.
- •3.2 Контрольні питання:
- •3.3 Приклади розв’язку задач.
- •4 Лабораторна робота №4
- •4.2 Контрольні питання
- •4.3 Приклад виконання лабораторної роботи
- •' Перевіримо, чи можуть числа бути довжинами сторін трикутника
- •' Це трикутник, обчислюємо його площу по формулі Герона
- •5 Лабораторна робота №5
- •5.3 Контрольні питання:
- •5.4 Приклад виконання лабораторної роботи.
- •6 Лабораторна робота №6
- •6.2 Контрольні питання
- •6.3 Приклад виконання лабораторної роботи.
- •Текст програми
- •Текст програми
- •Текст програми
- •Текст програми
- •' Розфарбовування
- •7 Лабораторна робота № 7
- •7.2 Контрольні питання
- •7.3 Приклад виконання лабораторної роботи
- •8 Література
6.2 Контрольні питання
-
Оператор циклу FOR – NEXT і його робота.
-
Що таке параметр циклу?
-
Оператори циклу з передумовою і з післяумовою.
-
Логічні операції для запису умов.
-
Що таке вкладені цикли, яка їхня структура?
-
Як здійснюється достроковий вихід з циклу7
-
Які види операторів циклу Ви ще знаєте?
-
Об'єкт Cells, звертання до нього і його властивості.
-
Алгоритм обчислення суми і кількості.
6.3 Приклад виконання лабораторної роботи.
Задача 6.3.1 В клітинці D2 знаходиться число Х. Підрахувати всі степені числа X, які менш ніж 1000. Записати їх на Лист Excel в два стовпчика: в одному стовпці - показник степені, в другому - її значення.
Текст програми
Sub степінь()
Dim x As Single, st As Single
' st – змінна для накопичення значень х в степені
Dim i As Integer, k As Integer ' i - номер строки, k - степінь
Range("A1").Value = "k"
Range("B1").Value = "x^k"
Range("D1").Value = "x"
Range("A1:D1").HorizontalAlignment = xlCenter
‘ Вирівнювання по центру ‘
x = Range("D2").Value
st = x : i = 2 : k = 1
Do
Cells(i, 1).Value = k
Cells(i, 2).Value = st
Cells(i, 2).NumberFormat = "0.0000"
i = i + 1 : st = st * x : k = k + 1
Loop While st < 1000
End Sub
Рис 6.1 Результати роботи програми
Задача 6.3.2 В діапазоні А1:С19 знаходяться числа. Перевірити чи є серед них числа, що дорівнюють 3. Вивести повідомлення.
Текст програми
Sub задача2()
Dim r As Range
For Each r In Range("A1:С19")
If r.Value = 3 Then
r.Select
MsgBox "Є числo =3"
Exit Sub
' Як тільки зустрічається потрібне число, виділяється клітина,
' що його містить, і відбувається достроковий вихід з процедури
End If
Next
MsgBox "Немає чисел=3"
' Ця частини програми працює тільки, якщо таких значень немає.
End Sub
Р ис. 6.2 Результати роботи програми
Задача 6.3.3 В діапазоні А1:D20 знаходяться числа, вільні клітки та текст. Знайти середнє арифметичне чисел.
Для розв’язку задачі перевіримо кожну клітину. Підрахуємо кількість клітин, в яких знаходяться числа, обчислимо їх суму й середнє арифметичне, а результат виведемо у вікні та на Лист Excel
Текст програми
Sub задача3()
Dim s As Single, kol As Single
Dim r As Range, i As Integer
' s – сума , kol – кількість
s = 0: kol = 0
For Each r In Range("A1:D20")
m = r.Value
If m <> "" And IsNumeric(m) = True Then
' перевірка того, що в клітині записане число
s = s + r.Value
kol = kol + 1
End If
Next
s = s / kol
' Пошук останнього рядка
i = 2
Do While Cells(i, 1) <> ""
i = i + 1
Loop
Cells(i, 1).Select
' Активізуємо перший вільний рядок
Cells(i, 1).Value = "Середня зарплата дорівнює"
Cells(i, 4).Value = s
Cells(i, 4).NumberFormat = "0.00"
Cells(i, 4).Select
MsgBox "Середнє значення з " & kol & " чисел =" & s
End Sub
Рис. 6.3 Результати роботи програми
Задача 6.3.4 В діапазоні B1:B20 знаходяться числа. Змінить колір фону клітин, що розташовані до мінімального значення.
Текст програми
Sub задача4()
Dim m As Single, r As Range
Dim i As Integer
' знаходження мінімуму
m = Range("B1").Value
For Each r In Range("B1:B20")
If m > r.Value Then m = r.Value
Next