If...Then...Else Statement

Määratleb ühe või mitu lause sisu, mille soovid käivitada, kui vastav tingimus on TÕENE.

Süntaks:


If condition=true Then Statement block [ElseIf condition=true Then] Statement block [Else] Statement block EndIf

Instead of Else If you can write ElseIf, instead of End If you can write EndIf.

Parameetrid:

Lause If...Then käivitab programmiplokid vastavalt sisestatud tingimusele. Kui LibreOffice Basic tuvastab lause If, siis kontrollitakse tingimust. Kui tingimus on tõene, siis käivitatakse kõik järgnevad laused kuni järgmise lauseni Else või ElseIf. Kui tingimus on väär ja järgneb lause ElseIf, testib LibreOffice Basic järgmist tingimust ja juhul, kui tingimus on tõene, käivitab järgmised laused. Kui tingimus on väär, jätkab programm järgmise lausega ElseIf või Else. Lausele Else järgnevad laused käivitatakse ainult siis, kui ükski varem kontrollitud tingimusest pole tõene. Pärast tingimuste analüüsimist ja vastavate lausete käivitamist jätkab programm lausele EndIf järgneva lausega.

Soovi korra saab pesastada mitu If...Then lauset.

Else ja ElseIf laused pole kohustuslikud.

Hoiatav ikoon

Lausete GoTo ja GoSub abil saad lause If...Then sisust väljuda, kuid ei saa plokki If...Then siseneda.


Järgmises näites kirjeldatakse toote aegumiskuupäeva sisestamist ja aegumiskuupäeva möödumise kindlaksmääramist.

Näide:


Sub ExampleIfThenDate
Dim sDate As String
Dim sToday As String
    sDate = InputBox("Sisesta aegumiskuupäev (MM.DD.YYYY)")
    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 "Aegumiskuupäev on möödas"
    ElseIf sDate > sToday Then
        MsgBox "Aegumiskuupäev pole veel möödas"
    Else
        MsgBox "Aegumiskuupäev on täna"
    End If
End Sub