Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС для 21-22 (2014-15).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
574.46 Кб
Скачать

Завдання до срс №7-8

Тема: Робота з функціями VBA. Керуючі інструкції If Then, If Then Else, Select Case

Мета: Вивчити правила використання керуючих інструкцій If Then, If Then Else, Select Case

ПОРЯДОК ВИКОНАННЯ РОБОТИ

Завантажте програму Excel і відкрийте свій файл.

  1. Керуюча інструкція If Then Else.

  1. Запустіть редактор VBA і введіть наступну процедуру:

Sub Пароль()

password = InputBox("Введіть, будь ласка, пароль")

If password = "123" Then

MsgBox "Дякую! "

Else

MsgBox "Співчуваю. Пароль невірний"

End If

End Sub

  1. Запустіть процедуру на виконання 2 рази: один раз уведіть вірний пароль, а іншій - ні.

  2. Запишіть у зошит процедуру Пароль і поясніть призначення кожного рядка процедури.

  3. Складемо блок-схему та процедуру, яка буде визначати вагову категорію спортсменів за умовою: якщо вага > 85 кг, та категорія – «важка», вага >60 кг та <85кг – «напівсередня», вага >30 кг та <60кг – «легка».

Oval 101 AutoShape 103 AutoShape 112 AutoShape 113

AutoShape 102

ні так

AutoShape 114 AutoShape 116

AutoShape 104

K;=”важка”

ні так

AutoShape 118 AutoShape 119 AutoShape 120 AutoShape 121

AutoShape 105

K;= «напівсередня»

AutoShape 122 так

K;= «легка»

ні

AutoShape 110 Oval 111 AutoShape 126 AutoShape 127 AutoShape 128 AutoShape 129 AutoShape 130 AutoShape 131

AutoShape 109

Sub Вагова_категорія()

Dim K As String, Vaga As Single

Vaga = Application.InputBox("Введіть вагу",Title:="Процедура Вага",Type:=1)

If Vaga > 85 Then

K= "Важка”

Else

If Vaga > 60 Then

K = "Напівсередня"

Else

If Vaga>30 Then

K = "Легка"

Else

MsgBox «Вага неприпустима або не зазначена»

Exit Sub

End If

End If

End If

MsgBox Vaga & "кг" & Chr(13) & "Вагова категорія" & K, Title:="Результат"

End Sub

Пояснення:

а) ця процедура буде працювати тільки в Excel, так як вона використовує метод Application.InputBox. Він не дає можливості користувачу під час роботи функції InputBox ввести будь-що, крім числа.

б) Chr (13): Chr - це функція, що дозволяє включить у рядок символи, що неможливо ввести з клавіатури під час написання процедури; її аргументом можуть бути будь-яке число від 0 до 255 і кожний символ має свій унікальний номер. У нашому випадку використаний аргумент 13, який означає повернення каретки, що аналогічно натисканню клавіші Enter.

  1. Запустіть на виконання процедуру декілька разів, вводячи щораз нові значення.

  2. Запишіть у зошит текст процедури Вагова категорія і поясніть призначення кожного рядка.

ІІ. Керуюча інструкція Select Case.

Коли при виконанні алгоритму необхідно вибирати з великої кількості різних гілок, зручно використовувати оператор Select Case. Він працює також, як множина незалежних операторів IF, але він зрозумілий для того, хто пише код і хто його читає. Оператор Select Case має наступний синтаксис:

Select Case вираз, що перевіряється

Case список виразів 1

оператори 1

Case список виразів 2

оператори 2

...... ..

Case Else

оператори_групи_Else

End Select

Вираз, що перевіряється, обчислюється на початку роботи оператора Select Case. Список виразів являє собою один або декілька виразів, розділених (,) або (;) в залежності від версії Windows (російська або американська). При виконанні оператора перевіряється, чи відповідає хоча б один з елементів цього списку, що перевіряється, виразу. Якщо так, то виконується відповідна група операторів, і на цьому виконання оператора Select Case закінчується. Якщо ж жодний з елементів усіх цих списків не відповідає значенню виразу, що перевіряється, то виконуються оператори групи Else, якщо така присутня.

Приклад. Розглянемо той же приклад Вага, але використовуємо керуючу інструкцію Select Case. Для того, щоб не вводити наново увесь текст процедури, відредагуйте рядки процедури Вага відповідно до вище наведеного приклада.

Sub Вагова_категорія()

Dim K As String, Vaga As Single

Vaga = Application.InputBox("Введіть вагу", Title:="Процедура Вага", Type:=1)

Select Case Vaga

Case Is > 85

K = "Важка"

Case Is > 60

K = "Напівсередня"

Case Is>30

K = "Легка"

Case Else

MsgBox "Вага неприпустима або не зазначена"

Exit Sub

End Select

MsgBox Vaga & "кг" & Chr(13) & "Вагова категорія - " & K, Title:="Результат"

End Sub

Примітка: Is в цьому операторі означає посилання на змінну Vaga

Завдання1. Запустіть на виконання текст процедури, а потім перепишіть її в зошит із поясненням призначення рядків.

Завдання2.

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

Середній бал

Стипендія (грн.)

Сер. бал менше 4

Стипендії немає

4,0 – 4,24

390

4,25 – 4,49

450

4,5 - 5

560

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