excel-vba
Условные утверждения
Поиск…
Утверждение If
Оператор If
позволяет использовать другой код в зависимости от оценки условного (логического) оператора. Условным выражением является выражение, которое оценивает либо True
либо False
, например x > 2
.
Существует три шаблона, которые можно использовать при реализации оператора If
, которые описаны ниже. Обратите внимание , что If
условная оценка всегда следует Then
.
1. Оценка одного If
условное утверждение и что-то делает, если оно True
Одиночная строка If
оператор
Это самый короткий способ использования « If
и это полезно, когда только одно утверждение должно выполняться при оценке True
. При использовании этого синтаксиса весь код должен находиться в одной строке. Не включайте End If
в конце строки.
If [Some condition is True] Then [Do something]
If
блок
Если несколько строк кода необходимо выполнить при оценке True
, может использоваться блок If
.
If [Some condition is True] Then
[Do some things]
End If
Обратите внимание, что если используется многострочный блок If
, требуется соответствующий End If
.
2. Оценка одного условного оператора If
, делая одно, если оно True
и делает что-то другое, если оно False
Одиночная строка If
, Else
statement
Это можно использовать, если один оператор должен выполняться при оценке True
и другое утверждение должно выполняться при False
оценке. Будьте осторожны с использованием этого синтаксиса, так как для читателей зачастую неясно, что есть инструкция Else
. При использовании этого синтаксиса весь код должен находиться в одной строке. Не включайте End If
в конце строки.
If [Some condition is True] Then [Do something] Else [Do something else]
If
, Else
block
Используйте блок If
, Else
чтобы добавить ясность в ваш код, или если несколько строк кода должны быть выполнены либо при проверке True
либо в False
.
If [Some condition is True] Then
[Do some things]
Else
[Do some other things]
End If
Обратите внимание, что если используется многострочный блок If
, требуется соответствующий End If
.
3. Оценка многих условных операторов, когда предыдущие утверждения являются False
и делают что-то другое для каждого
Этот шаблон является наиболее общим использованием If
и будет использоваться, когда существует много неперекрывающихся условий, требующих различного лечения. В отличие от первых двух шаблонов, этот случай требует использования блока If
, даже если для каждого условия будет выполняться только одна строка кода.
If
, ElseIf
, ...
, Else
block
Вместо того, чтобы создавать много блоков If
ниже, может использоваться ElseIf
чтобы оценить дополнительное условие. ElseIf
оценивается только в том случае, если предшествует. If
оценка False
.
If [Some condition is True] Then
[Do some thing(s)]
ElseIf [Some other condition is True] Then
[Do some different thing(s)]
Else 'Everything above has evaluated to False
[Do some other thing(s)]
End If
Поскольку многие управляющие операторы ElseIf
могут быть включены между If
и End If
мере необходимости. Элемент управления Else
не требуется при использовании ElseIf
(хотя это рекомендуется), но если он включен, он должен быть окончательным контрольным заявлением до End If
.