Лабораторная работа: Пользовательские функции рабочего листа Visual Basic
Discount = 0.05
End If
Дерево условий может оказаться гораздо более сложным, чем просто проверка одного условия. В этом случае оператор If….Then….ElseIf, который позволяет проверять множественные условия. Следующий пример показывает порядок проверки условий.
If condition-1 Then
[Statements]
[ElseIf condition-2 Then
[elseifstatements]
[Else
[elsestatements]]
End If
Первым поверяется условие condition-1. Если оно имеет значение True, то выполняются инструкции Statements и далее работа программы продолжится со строки, которая следует за ключевым словом End If. Если условие condition-1 возвращает значение False, то проверяется условие condition-2 и т.д., пока не встретится условие, возвращающее значение True, или не встречается ключевое слово Else.
Пользовательская функция с двумя условиями
Посмотрим для функции в стандартном модуле пользовательскую функцию (листинг 3).
Листинг 4. Пользовательская функция с двумя условиями (вариант 1).
Function Y(x)
If x < 0.5 Then
Y=(1+Abs(0.2-x))/(1+x+x^2)
Else
Y=x^(1/3)
End If
End Function
Конечно, ту же самую можно было бы запрограммировать с использованием двух операторов If. Но хотя этот код содержит меньше строк, он менее предпочтительнее (листинг 4).
Пользовательская функция с тремя условиями
Создадим в стандартном модуле пользовательскую функцию (листинг 5).для функции
Листинг 5. Пользовательская функция с двумя условиями (вариант 1).
Function Z(x)