Главная страница

Экзамен Понятие информации и данных


Скачать 421.5 Kb.
НазваниеЭкзамен Понятие информации и данных
Дата07.05.2019
Размер421.5 Kb.
Формат файлаdoc
Имя файлаEkzamen.doc
ТипДокументы
#76433
страница3 из 4
1   2   3   4

29. VBA. Ветвления


Ветвление - это управляющая операция языка программирования, позволяющая изменить порядок выполнения алгоритма программы.

Для реализации ветвлений в программах на VBA используются следующие операторы:

  • условный оператор If;

  • оператор выбора Select Case;

  • оператор безусловного перехода Goto.


Условный оператор If

Условный оператор – это структура, которая выбирает ту или иную ветвь кода процедуры на основе некоторого предопределенного условия или группы условий. Оператор ветвления (условный оператор) - это структура, которая представляет собой простую форму проверки заданных условий, впоследствии чего выполняются определенные операторы.Оператор If…Then…Else…End if имеет следующий синтаксис:

Условный оператор с одной ветвью:if условие then команды end

При выполнении такого оператора вычисляется условие, и если оно истинно, то выполняются команды до ключевого слова end, в противном случае выполнение программы продолжается со следующей за условным оператором команды. В языках низкого уровня (ассемблерах) это — единственная доступная форма условного оператора. В некоторых языках для условного оператора с одной ветвью используется специальное ключевое слово (обычно это then, в переводе с англ. — «то»).

Условный оператор с двумя ветвями:if условие then команды1 else команды end

Здесь при истинности условия выполняются команды1, при ложности — команды2. При необходимости проверить последовательно несколько условий возможно каскадирование условных операторов:


  • If a = 5 Then

  • действие 1

  • elseif (a > 7 And a < 9) Or (a = 7 Or a = 9) then

  • действие 2

  • Else действие 3

  • End If

30. Оператор ветвления "Select Case"

При создании сложных программ один из ключевых моментов - возможность предусмотреть несколько вариантов развития событий. Самый простой и классический пример - оператор "If ... Then ... Else ... End", который позволяет выбрать одно из двух действий в зависимости от результатов проверки каких-либо значений. Бывает, что в результате такой проверки необходимо выбрать из множества вариантов. Один из выходов: добавить множество "... ElseIf ...", что несколько усложняет синтаксис программы (лёгкость её чтения). Однако это очень мощный оператор, открывающий большие возможности. Подробнее о нём можно узнать здесь.

Альтернативой оператору "If ... End" служит оператор "Select Case" (с английского "Select Case" можно перевести как "Выбор Ситуации"), который упрощает восприятие кода "на глаз". И если "If ... End" оператор в каждом своём "ElseIf" вынужден обращаться к проверяемым значениям снова и снова (допустим, выражение каждый раз одинаковое), то "Select Case" делает это только один раз, что позволяет последнему на больших массивах данных работать быстрее. Этот оператор позволяет удобно задать ветвление программы из одной точки в большое количество веток. То есть в основном применяется при множественных условиях проверки, когда проверяемых условий больше двух.

  • Sub Test()

  • a = 3

  • Select Case a

  • Case Is > 5

  • MsgBox "a больше 5"

  • Case Is > 7

  • MsgBox "a больше 7"

  • Case Else

  • MsgBox "Не подходит ни одно условие"

  • End Select

  • End Sub



31. Цикл For Loop в VBA – один из самых популярных циклов в Excel. Данный цикл имеет две формы – For Next и For Each In Next. Данные операторы используются для последовательного перемещения по списку элементов или чисел. Для завершения цикла мы можем в любой момент использовать команду выхода

Цикл For Next имеет следующий синтаксис:

  1. For счетчик = начало_счетчика To конец_счетчика

  2. ‘Какое-то действие

  3. Next счетчик

То что мы делаем здесь, по существу, это создаем цикл, который использует переменную счетчик как хранитель времени. Устанавливаем его значение равным начало_счетчика, и увеличиваем (или уменьшаем) на 1 во время каждого витка. Цикл будет выполняться до тех пор, пока значение счетчик не станет равным конец_счетчика. Когда оба эти значения совпадут, цикл выполнится последний раз и остановится.
Пример цикла

  1. Sub пример_цикла1()

  2. For счетчик = 1 to 10

  3. j = счетчик

  4. Next счетчик

  5. msgbox "Значение счетчика на последнем витке равно " & счетчик

  6. End Sub

Последнее значение переменной счетчик будет равным 11


1   2   3   4


написать администратору сайта