Условный оператор IF является основной частью любого языка программирования. Без него не обойтись при написании даже небольшой программы, в которой необходимо принять некоторое решение. Синтаксис конструкции If следующий:
If условие Then [Команда 1] [Else Команда 2]
Если перевести, то получается: Если условие Тогда Команда 1 Иначе Команда 2
Т.е. если условие истинно тогда выполняется некоторая Команда (Команды) иначе выполняются другие Команды.В этом варианте конструкции IF будет выполнено только одна Команда. Else можно пропустить.
Примечание: При такой форме условия в Visual Basic после ключевого слова Then обязательно должна идти команда, а так же слова Then и Else должны находиться на той же строке что и IF, иначе интерпретатор выдаст ошибку. Если для удобства восприятия необходимо Команду 1 перенести на новую строку, то необходимо воспользоваться символом «_» после Then.
If условие Then _
[Команда 1] _
[Else Команда 2]
При таком варианте использования условия будет выполнено только одно действие. Если необходимо выполнить множество действий после Then или Else, то воспользуйтесь следующим вариантом написания условия:
If условие Then
[Команда 1]
[Команда 2]
…
[Else]
[Команда 3]
[Команда 4]
End If
Ключевое слово Else можно так же, как и в первом варианте не использовать, если нет необходимости.
И третий вариант конструкции, при котором происходит проверка условия, если первое условие не выполнено
If условие 1 Then
[Команда 1]
[Команда 2]
…
[ElseIf условие 2 Then
[Команда 3]
[Команда 4]
[Else
[Команда 5]
[Команда 6]
End If
В условиях также можно использовать логическое И (And), ИЛИ(Or) и отрицание НЕ (Not).
Рассмотрим несколько примеров использования выше перечисленных конструкций.
Пример 1
If a=b Then msgbox «а равняется b» Else msgbox «а не равно b»
Пример 2
В этом варианте Else не используем.
If a=b Then msgbox «а равняется b»
Пример 3
Используя «_» для интерпретатора Basic такая запись равносильна записи в Примере 1
If a=b Then _
msgbox «а равняется b» _
Else msgbox «а не равно b»
Пример 4
If a=b Then
msgbox «а равняется b»
a = a+b
Else
msgbox «а неравно b»
c = b
End If
Пример 5
If a=b Then
msgbox «а равняется b»
ElseIf a>b Then
msgbox «а больше b»
Else
msgbox «b больше a»
End If