КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Циклическая структура For-Next
End If Else Else Else Else И т д Блок операторов_3 If Выражение_3 Then Else Блок операторов_2 If Выражение_2 Then Else Блок операторов_1 If Выражение_1 Then Многоблочная структура If-Then-ElseIf End If End If Одноблочная структура If-Then Логические функции Для расширения возможностей простых операторов логического сравнения, в VBA предоставляет возможность использования логических функций, некоторые из них приведены в таблице.
ПРИМЕР: Результат логического выражения (1=1) And (2>1) - True, так как оба условия справедливы. Результат логического выражения (1=1) Xor (1>2) - False, так как только одно из условий справедливо, а функция отрицает такую возможность. Отличие одноблочного оператора If-Then от простейшего оператора If состоит в том, что после ключевого слова Then ничего не пишется, а первый оператор из блока записывается со следующей строки. Окончание блока операторов обязательно следует обозначить с помощью оператора End If. If Выражение Then Блок операторов ПРИМЕР: If A > B Then A = B C = B*A Z = Exp(B + C) Одноблочный оператор позволяет значительно упростить структуру программы, когда при получении результата логического сравнения Выражения нужно выполнить или пропустить не один, а несколько операторов. Многоблочная структура операторов If-Then позволяют существенно расширить возможности одноблочной структуры. Они используются в тех случаях, когда необходимо отслеживать выполнение одного из нескольких условий сравнения. Общий вид такой структуры Else Блок операторов_4 End If Когда встречается многоблочная структура If-Then, то VBA определяет результат логического Выражения_1. Если он равен True, то Блок операторов_1 выполняется, если результат False, данный блок пропускается и осуществляется переход к строке логического сравнения Выражения_2. Далее таким же способом производится проверка результата логического сравнения Выражения_2 и Выражения_3. Если ни одно из условий логического сравнения Выражение_1, Выражения_2 и Выражение_3 не имеют результата True, выполняется Блок операторов_4 условия Else, которое можно воспринимать как условие “Иначе”. Это необязательный оператор, он используется только в тех случаях, когда программа должна сделать определенные действия, если из перечисленных условий ни одно не выполняется. ПРИМЕР: If Pay > 1000 Then Bonus = Pay / 100 If Pay > 10000 Then Bonus = Pay / 90 If Pay > 100 000 Then Bonus = Pay / 80 If Pay > 1000 000 Then Bonus = Pay / 70 Bonus = Pay / 200 Блок условия Else будет выполняться, если Pay <= 1000. Вычисляемые циклы Вычисляемый цикл предназначен для повторения одного блока кода заданное количество раз. Их применяют в том случае, когда заранее известно, сколько раз нужно его выполнить. Синтаксис структуры For-Next имеет вид: Блок кода Exit For Next Счетчик_Цикла ПРИМЕР For i = 1 То 10 Step 2 ' Будут рассчитываться значения i = 1, 3, 5, 7, 9 Y = x * i Next For j = 99 То 20 Step –5 ' В порядке убывания j = 99, 94, 89 и т.д. до 24 F = (j + 3) * (j – 1) * 0.523 If F > 1500 Then Exit For Next j Счетчик_цикла – имя переменной, предназначенной для счета количества шагов цикла. Ее значение должно представлять целое число. Поскольку значение переменной Счетчик_Цикла любом месте блока кода цикла, следует помнить, что такие изменения могут привести к зависанию программы или возникновению ошибок, которые трудно найти. По возможности изменений Счетчика_Цикла в теле цикла следует избегать. Переменные Начало и Конец задают начальное и конечное значения Счетчика_цикла, а Шаг – величину наращивания ее значения после каждого выполнения цикла. Когда в программе встречается цикл For-Next, Счетчик_цикла получает значение Начало, затем выполняется блок кода вплоть до оператора Next. Пусть Шаг - положительное число, тогда значение Счетчика_цикла увеличивается на величину Шаг и сравнивается со значением Конец. Если значение Счетчика_цикла больше, чем значение Конец, то цикл прерывается и управление передается оператору, следующему за оператором Next. Если значение Счетчика_цикла меньше или равно значению Конец, то блок кода цикла выполняется еще раз. Так продолжается до тех пор, пока значение Счетчика_цикла не станет больше значения Конец. Оператор Exit For используется для дострочного прерывания цикла. Обычно ему предшествует оператор логического сравнения каких-либо величин. В этом случае также управление переходит к оператору, следующему за оператором Next. Если зарезервированное слово Step и величина Шаг опущены, то величина Счетчик_цикла наращивается на единицу после каждого шага цикла. Если величина Конец меньше величины Начало и величина Шаг -отрицательное число, то цикл считается по убывающей, а не по возрастающей Логически прерываемые циклы (ЛПЦ) Логически прерываемые циклы – это повторяемые структуры, которые повторяются, только если выполняется некоторое условие. В отличие от структуры For-Next, такой цикл может выполнять блок кода неопределенное количество раз или не выполнять его совсем, если логическое условие выполняется сразу же при входе в цикл. Таким образом, ЛПЦ используются в тех случаях, когда количество шагов цикла заранее неизвестно. ЛПЦ применяются также для создания цикла обработки события. Он содержит вызовы процедур, проверяющих факт наступления события (запись текста в ячейку таблицы, директивы меню). Если событие наступило, то вызывается процедура его обработки. Цикл продолжается до тех пор, пока не будет вызвано условие завершения работы программы. Применение циклов Do-Loop. Цикл Do-Loop является наиболее универсальным из логически прерываемых циклов. Существуют четыре конфигурации этого цикла:
Дата добавления: 2014-12-29; Просмотров: 388; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |