IBM Lotus Symphony
|
Определяет один или несколько блоков операторов, выполняемых только в том случае, если заданное условие равно True.
If Условие=true Then Блок операторов [ElseIf Условие=true Then] Блок операторов [Else] Блок операторов End If (Вместо Else If можно писать ElseIf)
Оператор If...Then выполняет блоки программы в зависимости от соблюдения заданных условий. Когда среда Basic Lotus® Symphony™ обнаруживает оператор If, она проверяет условие. Если условие соблюдено (True), то выполняются все операторы до следующего оператора Else или ElseIf. Если условие не соблюдено (False), и ниже указан оператор ElseIf, то среда Basic Lotus Symphony проверяет следующее условие и, если оно соблюдено, выполняет последующие операторы. Если оно не соблюдено, то программа переходит к следующему оператору ElseIf или Else. Операторы, следующие за оператором Else, выполняются только в том случае, если ни одно из предыдущих проверенных условий не соблюдено. После проверки всех условий и выполнения соответствующих операторов программа переходит к оператору, следующему за EndIf .
Операторы If...Then могут быть вложенными.
Операторы Else и ElseIf необязательны.
![]() |
С помощью операторов GoTo и GoSub можно выйти из блока If...Then, но нельзя войти в блок If...Then. |
В следующем примере пользователь вводит дату истечения срока действия продукта, а программа проверяет, наступила ли эта дата.
Sub ExampleIfThenDate
Dim sDate as String
Dim sToday as String
sDate = InputBox("Введите дату истечения срока действия (ММ.ДД.ГГГГ)")
sDate = Right$(sDate, 4) + Mid$(sDate, 4, 2) + Left$(sDate, 2)
sToday = Date$
sToday = Right$(sToday, 4)+ Mid$(sToday, 4, 2) + Left$(sToday, 2)
If sDate < sToday Then
MsgBox "Дата истечения срока действия уже прошла"
ElseIf sDate > sToday Then
MsgBox "Дата истечения срока действия еще не наступила"
Else
MsgBox "Дата истечения срока действия - сегодняшний день"
End If
End Sub