If...Then...Else utasítás

Tartalom

# If...Then...Else Statement

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

### Szintaxis:

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

Instead of End If you can write EndIf.

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

      If condition Then statement [Else statement]

### Paraméterek:

Az If...Then utasítás az adott feltételtől függően hajtja végre a programblokkokat. Ha a LibreOffice Basic egy If utasítást talál, akkor megvizsgálja a feltételt. Ha a feltétel True, akkor végrehajtja a következő Else vagy ElseIf utasítás előtt levő utasításokat. Ha a feltétel False, és egy ElseIf utasítás következik, akkor a LibreOffice Basic megvizsgálja a következő feltételt, és ha True, akkor végrehajtja a következő utasításokat. Ha False, akkor a program a következő ElseIf vagy Else utasítással folytatódik. Az Else után levő utasítások csak akkor kerülnek végrehajtásra, ha a korábban vizsgált egyik feltétel sem volt True. Az összes feltétel kiértékelése és a megfelelő utasítások végrehajtása után a program az EndIf után utasítással folytatódik.

Több If...Then utasítást is egymásba ágyazhat.

Az Else és ElseIf utasítás elhagyható.

A GoTo és GoSub utasítás segítségével kiugorhat egy If...Then blokkból, de nem ugorhat másik If...Then struktúrára.

### Példa:

A következő példa lehetővé teszi egy termék lejárati idejének megadását, és meghatározza, hogy ez a bizonyos határidő lejárt-e már.

    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 "Az érvényesség lejárt"
        ElseIf dInput > Date() Then
            MsgBox "Az érvényesség még nem járt le"
        Else
            MsgBox "Ma van az érvényessé vége"
        End If

    inputError:
        If dInput = 0 Then MsgBox "Invalid input"
    End Sub

Kapcsolódó témakörök

Select Case statement

Iif or Switch functions