LibreOffice 25.2 Súgó
Defines one or more statement blocks that you only want to execute if a given condition or expression is True.
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]
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.
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