- •Основы и принципы работы в vba
- •Часть 1 омск 2008
- •Часть 1
- •1.1. Краткие теоретические сведения
- •1.2. Индивидуальные задания Задание 1.
- •1) Изучить правила записи констант, переменных, стандартных функций и арифметических выражений.
- •Выражения, записанные на языке Visual Basic
- •2.1. Краткие теоретические сведения
- •2.2. Индивидуальные задания
- •Программа вычислений имеет вид:
- •2.3. Дополнительное задание
- •3.1. Краткие теоретические сведения
- •3.2. Индивидуальные задания
- •3.2.1. Примеры проверки числа на кратность
- •3.2.2. Использование линейной формы записи операторов
- •4.1. Краткие теоретические сведения
- •Блок операторов 1
- •4.2. Индивидуальные задания
- •4.2.1. Простое ветвление. Логические операции
- •4.2.2. Сложное ветвление
- •Данные для вычисления функции у с использованием условного оператора
- •4.2.3. Задания на использование оператора выбора Select Case
- •4.3. Дополнительное задание
- •Типы данных vba
- •Часть 1
- •644046, Г. Омск, пр. Маркса, 35
4.1. Краткие теоретические сведения
Пример 1. Вычислить значения функции у при x = –2; 1,2; 6:
где a = –1; b = 2.
Схема алгоритма вычисления заданной функции приведена на рис. 4.1.
Программа, реализующая данный
алгоритм, имеет вид:
Option Explicit
Sub PR1( )
Dim a as single, x as single
Dim b as single, y as single
a=Cells(2,2): b=Cells(2,3)
x= Val(InputBox("Введите x"))
If x <–2 Then
y=a*x*x
ElseIf x<=5 Then
y=abs(sin(x))+b
Else
у=a*log(x)/log(10)+b
End If
MsgBox(“x=” & x & “ y=”& y)
End Sub
На схеме алгоритма (см. рис. 4.1) блок 4 проверяет условие x < –2. При выполнении этого условия управление передается блоку 6, в противном случае– блоку 5, где проверяется условие x ≤ 5, и в зависимости от результата проверки управление передается блоку 7 или 8. Блок 9 выводит введенный аргумент и значение функции y, вычисленное в блоке 6, 7 или 8.
Альтернативным оператором для условного оператора перехода с вложениями является оператор выбора Select Case, работающий как множество независимых операторов If. Оператор выбора Select Case удобно использовать, когда в зависимости от значения некоторого выражения, имеющего конечное множество допустимых значений, необходимо выполнить разные действия.
Оператор выбора Select Case имеет вид:
Select Case Тестируемое выражение
Case Условие выбора 1
Блок операторов 1
……………
Case Условие выбора n
Блок операторов n
Case Else
Блок операторов
End Select
Тестируемое выражение – это любое численное или строковое выражение (например, имя одной переменной, математическое или численное выражение, но не логическое). Условие выбора – это список логических выражений, отделяемых запятыми. Условие выбора может также определять диапазон значений при использовании оператора To. Ветвь Case может содержать один оператор, несколько или ни одного оператора, и все они будут выполняться, если условие оператора Case истинно.
Пример 2. Наблюдения за 20 машинами показали, что до первого отказа одного из элементов наработка машин представляется исходными данными, приведенными в табл. 4.1. Определить частоту отказа по интервалам пробега.
Таблица 4.1
Статистический ряд
Интервал пробега, км |
Частота отказа |
От 1001 до 2000 |
3 |
От 2001 до 3000 |
7 |
4001 и более |
10 |
Программный код:
Option Explicit
Sub PR2 ()
Dim km As Double, P As Double
km = Val(InputBox("Введите интервал пробега"))
Select Case km
Case 1001 To 2000
P = 3/20
Case 2001 To 3000
P = 7/20
Case Is >= 4001
P = 10/20
End Select
MsgBox ("Частость по интервалу пробега равна" & P)
End Sub
Слово Is, используемое в программе, является ключевым словом VBA, обозначающим тестируемое выражение в операторе Case.
В операторе Case допустимо использовать составные условия подобно тому, как это делается в условном операторе.
Пример 3.
Case 5, 6, 9 to 10, 13, 14, Is >=16
В этом операторе проверяется, принадлежит ли значение тестируемого выражения отрезку от 9 до 10 или равняется одному из значений 5, 6, 13, 14, или оно не меньше 16.