Erklæringen If...Then...Else Statement

Definerer en eller flere erklæringsblokke, som du kun vil udføre, hvis en given betingelse eller udtryk er True (sand).

Syntaks:

Erklæringen If...EndIf

 fragmentet ElseIf

fragmentet Else


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

I stedet for Else If kan du skrve ElseIf,i stedet for End If kan du skrive EndIf.

tip

If erklæringer kan afkortes til en linje ved brug af enkelterklærings-blokke.



  If condition Then statement [Else statement]

Parametre:

Erklæringen If...Then udfører programblokke afhængigt af de givne betingelser. Når LibreOffice Basic møder en If-erklæring, prøves betingelsen. Hvis betingelsen er True (sand), udføres alle følgende erklæringer op til den næste Else- eller ElseIf-erklæring. Hvis betingelsen er False (falsk) og der følger en ElseIf-erklæring, tester LibreOffice Basic det næste udtryk og udfører de følgende erklæringer, hvis betingelsen er True. If False (sand), programmet fortsætter med enten den næste ElseIf- eller Else-erklæring. Erklæringer, der følger Else udføres kun, hvis ingen eller de forud testede betingelser var True (sande). Efter at alle betingelser er testet og de tilsvarende erklæringer er udført, fortsætter programmet med de erklæringer, der følger EndIf.

Du kan indlejre gentagne If...Then- sætninger.

Else og ElseIf- sætninger er valgfrie.

Advarselsikon

Du kan bruge GoTo og GoSub for at hoppe ud af en If...Then- blok, men ikke til at hoppe ind i en If...Then struktur.


Eksempel:

Følgende eksempel lader dig indtaste udløbsdatoen på et produkt, og bestemmer om udløbsdatoen er overskredet.


Sub ExampleIfThenDate
    Dim sDate As String
    Dim sToday As String
    sDato = InputBox("Angiv udløbsdatoen (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 "Udløbsdatoen er overskredet"
    ElseIf sDate > sToday Then
        MsgBox "Udløbsdatoen er endnu ikke passeret"
    Else
        MsgBox "Udløbsdatoen er i dag"
    End If
End Sub

Støt os venligst!