Ukaz If...Then...Else

Definira enega ali več programskih blokov, za katere želite, da se izvedejo le v primeru, da je nek pogoj izpolnjen ali da je izraz enak True.

Skladnja:

Skladnja ukaza If...EndIf


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

Namesto End If lahko zapišete EndIf.

tip

Ukaze If lahko okrajšano zapišete v eni vrstici, če vsebujejo le bloke z enim ukazom.



  If condition Then statement [Else statement]

Parametri:

Ukaz If...Then izvaja programske bloke v odvisnosti od pogojev. Ko LibreOffice Basic naleti na ukaz If, najprej preizkusi pogoj. Če je pogoj uresničen (True), se izvedejo vsi ukazi vse do naslednjega ukaza Else ali ElseIf. Če pogoj ni izpolnjen (False) in se v stavku nahaja ElseIf, LibreOffice Basic preizkusi naslednji izraz in izvede ukaze, ki mu sledijo v primeru, da je pogoj uresničen (True). Če ni res (False), program nadaljuje ali z naslednjim ukazom ElseIf ali Else. Ukaze, ki se nahajajo za Else, izvede samo v primeru, če noben od predhodnih pogojev ni bil resničen (True). Po preizkusu vseh pogojev in po izvedbi tozadevnih blokov ukazov program nadaljuje z ukazi, ki se nahajajo za ukazom EndIf.

Ukaze If...Then lahko gnezdite.

Ukaza Else in ElseIf sta neobvezna.

Ikona opozorila

Uporabite lahko GoTo in GoSub, da skočite iz bloka If...Then, skok v nasprotni smeri, v strukturo If...Then, pa ni mogoč.


Primer:

Naslednji primer omogoča vnos roka zapadlosti izdelka, nakar program preveri, če je izdelek že zapadel.


Sub ExampleIfThenDate
    Dim sInput As String
    Dim dInput As Date
 
  On Error Goto napakaVnosa
    sDatum = InputBox("Vnesite rok veljavnosti (LLLL-MM-DD)")
    dInput = DateValue(sInput)
 
    If dInput < Date() Then
        MsgBox "Rok zapadlosti je potekel"
    ElseIf dInput > Date() Then
        MsgBox "Rok zapadlosti še ni potekel"
    Else
        MsgBox "Rok zapadlosti je današnji dan"
    End If
 
inputError:
    If dInput = 0 Then MsgBox "Neveljaven vnos"
End Sub

Ukaz Select Case

Funkciji Iif in Switch

Podprite nas!