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|Else If} expression Then
          statements]
      [Else
          statements]
      {EndIf|End If}

Instead of Else If you can write ElseIf, 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 sDate As String
        Dim sToday As String
        sDate = InputBox("Adja meg az érvényesség végét (HH.NN.ÉÉÉÉ)")
        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 "Az érvényesség lejárt"
        ElseIf sDate > sToday Then
            MsgBox "Az érvényesség még nem járt le"
        Else
            MsgBox "Ma van az érvényessé vége"
        End If
    End Sub

Kapcsolódó témakörök

Select Case statement

Iif or Switch functions