Modul
Tartalom
Index 🔎︎

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

Egy vagy több utasításblokkot definiál, amelyet egy megadott feltétel True értékénél szeretné futtatni.

## Szintaxis:

    If feltétel=true Then Utasításblokk [ElseIf feltétel=true Then] Utasításblokk [Else] Utasításblokk EndIf

Az Else If helyett használhatja az ElseIf és az End If helyett használhatja az EndIf kulcssavakat is.

## 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 igaz, akkor végrehajtja a következő Else vagy ElseIf utasítás előtt levő utasításokat. Ha a feltétel hamis, és egy ElseIf utasítás következik, akkor a LibreOffice Basic megvizsgálja a következő feltételt, és ha igaz, akkor végrehajtja a következő utasításokat. Ha hamis, 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 igaz. 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.

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.

## Példa:

    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