If...Then...Else Statement

Defines one or more statement blocks that you only want to execute if a given condition or expression is True.

Синтаксис:

If...EndIf statement


  If condition Then 
      statements
  [{ElseIf} condition Then
      statements]
  [Else 
      statements]
  {EndIf|End If}

Instead of End If you can write EndIf.

tip

If statements can be shortened to one line when using single statement blocks.



  If condition Then statement [Else statement]

Параметры:

The If...Then statement executes program blocks depending on given conditions. When LibreOffice Basic encounters an If statement, the condition is tested. If the condition is True, all subsequent statements up to the next Else or ElseIf statement are executed. If the condition is False, and an ElseIf statement follows, LibreOffice Basic tests the next expression and executes the following statements if the condition is True. If False, the program continues either with the next ElseIf or Else statement. Statements following Else are executed only if none of the previously tested conditions were True. After all conditions are evaluated, and the corresponding statements executed, the program continues with the statement following EndIf.

Инструкции If...Then можно вкладывать одну в другую.

Else и ElseIf — необязательные инструкции.

Значок предупреждения

Можно использовать GoTo и GoSub, чтобы выйти из участка программы, ограниченного If...Then, но нельзя с их помощью войти в структуру If...Then.


Пример:

Следующий пример даёт возможность ввести срок годности продукта и сообщает, истёк ли этот срок годности.


Sub ExampleIfThenDate
    Dim sInput As String
    Dim dInput As Date
 
  On Error Goto inputError
    sInput = InputBox("Enter the expiration date (YYYY-MM-DD)")
    dInput = DateValue(sInput)
 
    If dInput < Date() Then
        MsgBox "Срок годности истёк"
    ElseIf dInput > Date() Then
        MsgBox "Срок годности ещё не истёк"
    Else
        MsgBox "Срок годности истекает сегодня"
    End If
 
inputError:
    If dInput = 0 Then MsgBox "Invalid input"
End Sub

Select Case statement

Iif or Switch functions

Пожалуйста, поддержите нас!