End If.
Если условие1 истинно, то выполняется операторы следующие за ним, а затем первый, из операторов следующий за ключевым словом End if. Если условие1 ложно, то выполняются операторы ElseIf в порядке их следования, чтобы проверить их условия. Если обнаружится, что одно из условий имеет значение True (справедливо), то выполняется оператор, который следуют непосредственно за соответствующим ключевым словом Then.
Если все условия ложны, то выполняется оператор, следующий за ключевым словом Else. Таким образом, если первое условие ложно, операторы ElseIf обеспечивают проверку дополнительных условий с целью выбора одного из нескольких значений.
Синтаксис оператора условного перехода Select Case имеет вид:
Select Case значение
Case условие1
Операторы1
……………
Case условие2
Операторы 2
…………….
Case условиеL
Операторы L
…………….
Case Else
Операторы
…………….
End Select.
В этом условном операторе значение переменной сравнивается с каждым из значений, которые хранятся в выражениях каждого из условий. Если значение переменной удовлетворяет одному из значений условия, будут выполняться операторы, следующие за этим условием. Затем будет выполняться оператор, следующий за ключевым словом End Select. Если значение переменной не удовлетворяет ни одному из значений условий, то выполняется оператор, следующий за оператором Case Else.
Пример применения оператора IF...Then...ElseIf…Else...End If:
Sub massege()
Dim A As String
Повтор:
A = InputBox("Введіть ПАРОЛЬ", "Введення пароля")
If A = "КПІ" Then
MsgBox "Приємного навчання!", , "Вхід вільний"
Else
MsgBox "Помилка", vbCritical
GoTo Повтор
End If
End Sub
Пример применения оператора Select Case:
Public Sub Вибор_Case()
Dim A As String, B As String, C As String, D As String
Повтор:
A = InputBox("Вгадайте моє ім'я?", "Введіть ім'я")
Select Case A
Case "ІФФ"
MsgBox "Вгадали!", vbExclamation
Case "Іван"
MsgBox "Не вгадали, я не Іван", vbCritical
Case "Петро"
MsgBox "Не вгадали, я не Петро", vbCritical
Case Else
MsgBox "Не вгадали, спробуйте ще раз!", vbCritical
GoTo Повтор
End Select
End Sub
Циклы
Какие либо действия процедуры повторяющиеся заданное количество раз или пока выполняется или не выполняется некоторое условие называют циклом. Процесс выполнения все операторов, заключенных в структуру цикла, один раз называется итерацией цикла.
Структуры цикла, всегда выполняющиеся заданное количество раз, называются циклами с фиксированным числом итераций. Другие типы структур цикла повторяются переменное количество раз в зависимости от некоторого набора условий. Такие циклы называются неопределенными циклами.
Блок операторов, находящийся между началом и концом цикла называется "тело цикла".
Циклы могут вкладываться друг в друга, но не могут пересекаться.
Оператор цикла For… Next.
Синтаксис:
For переменная_цикла = старт To конец [Step размер]
операторы
…………….
Next [переменная]
где:
переменная_цикла - любая численная переменная VBA
старт – любое численное выражение, определяет начальное значение для переменной_цикла;
конец – численное выражение, определяет конечное значение для переменной_цикла;
операторы - один, несколько или ни одного оператора VBA (тело цикла);
размер – шаг изменения переменной_цикла.
По умолчанию VBA увеличивает переменную_цикла на 1 каждый раз при выполнении операторов в цикле. Можно задать другое значение (размер - любое численное выражение), на которое будет изменяться переменная_цикла.