КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Пример 19.22.If MaxPrice > 23,000.00$ Then MaxPrice=23,500.00$ If Student_Card(100).FullName Like "Пе*" Then number=Student_Card(100).Group
При построении выражений используют специальные функции логических проверок VBA. Логические выражения могут быть построены с помощью стандартных логических функций:
Последовательно выполняется проверка истинности выражений. Если выражение 1 истинно, выполняется блок операторов 1, иначе выполняется проверка истинности выражения 2и т.д. Если ни одно из выражений не соответствует требованиям истинности, выполняется блок операторов Else,если оно имеется, иначе – оператор, следующий за End If.
Пример 19.23.Организация проверки условия блочной структурой оператора If
Оператор выборки Select Case.Данный оператор применяется в том случае, если во всех логических условиях участвует одна и та же величина (переменная):
Выражение для сравнения может быть записано в виде: Case 45 или Case 3, 4, 5, или Case 5 То 12. Если ни одно из сравнений не является истинным, выполняется блок операторов Else,если блок Elseотсутствует, управление передается оператору, следующему за End Case.
Пример 19.24.Организация последовательной проверки значения переменной
Оператор цикла For-Next.Данный оператор относится к категории вычисляемых циклов, когда известно заранее число повторений цикла, заданы начальное, конечное значения и шаг (приращение) изменения начального значения, т.е.:
Для каждого значения переменной этого цикла выполняется блок операторов, расположенных до ключевого слова Next.Затем происходит изменение переменной цикла (увеличение значения на шаг), проверяется полученное значение (не более указанного конечного значения) и повторяется выполнение блока операторов. Если переменная цикла превысила значение конец, управление передается оператору, следующему за фразой Next. В теле цикла может присутствовать оператор Exit For.При выполнении этого оператора прекращается цикл и управление также передается оператору, следующему за фразой Next. Цикл For-Nextможет быть вложенным. Пример 19.25.Организация циклов с использованием счетчика повторений
Цикл Do-Loop.Логически управляемый цикл, оператор Do – начало, оператор Loop– конец цикла; имеет 4 модификации: 1) условие True в начале цикла
Do While <условие> <блок операторов> Exit Do <блок операторов> Loop
Цикл выполняется до тех пор, пока истинно <условие>. Минимальное число повторений тела цикла – 0. Оператор Exit Doпредназначен для прекращения цикла и передачи управления оператору Loop– конец цикла. 2) условие True в конце цикла
Do <блок операторов> Exit Do <блок операторов> Loop While <условие> Цикл выполняется хотя бы один раз, в конце выполняется проверка <условия>. 3) условие False в начале цикла
Do Until <условие> <блок операторов> Exit Do <блок операторов> Loop Untilуказывает, что цикл выполняется до тех пор, пока <условие> не станет истинным. Минимальное число повторений тела цикла – 0. 4) условие False в конце цикла
Do <блок операторов> Exit Do <блок операторов> Loop Until <условие>
Условие проверяется в конце, цикл прекращается, когда условие станет истинным. Минимальное число повторений тела цикла – 1. Пример 19.26.Выполнение логически прерываемых циклов
Цикл While-Wend.Данный оператор полностью соответствует структуре Do While-Loop.Отличительной особенностью оператора является невозможность прервать выполнение цикла из тела цикла (Exit Doотсутствует), проверка условия выполняется только в начале цикла.
While <условие> <блок операторов> Wend Цикл For Each.Оператор относится к категории операторов объектного типа, т.е. применяется к массивам (элементам) и наборам объектов. Выполняется фиксированное число раз, число объектов в наборе определяется автоматически. Упорядочение элементов набора – произвольное.
For Each <элемент> In <набор> <блок операторов> Exit For <блок операторов>
где <элемент> представляет собой переменную типа Variant, <набор> – определенный набор объектов. Для прерывания цикла используется оператор Exit For.
|