If...Then...Else Statement

Defines one or more statement blocks that you only want to execute if a given condition or expression is True.

Sintaxi:

IFENDIF expressió

ElseIf fragment

Else fragment


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

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

tip

Si les expressions es poden escurçar a una línia quan s'utilitzen blocs d'expressió simples.



  If condition Then statement [Else statement]

Paràmetres:

L'expressió IfThen executa blocs de programa en funció de condicions donades. Quan el àsic es troba amb un Cert s'executen totes les expressions posteriors fins al False o ElseIf s'executen totes les expressions posteriors fins al False. Si la condició és False el programa continua amb les següents expressions False. Després de totes les condicions avaluades el programa continua amb l'expressió EndIf.

Podeu imbricar múltiples expressions If...Then.

Les expressions Else i ElseIf són opcionals.

Icona d'avís

Podeu utilitzar GoTo i GoSub per saltar fora d'un bloc If...Then, però no per saltar dins d'una estructura If...Then.


Exemple:

L'exemple següent us permet introduir la data de venciment d'un producte, i determina si la data de venciment ha passat.


Sub ExampleIfThenDate
    Dim sDate As String
    Dim sToday As String
    sDate = InputBox("Introduïu la data de venciment (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 "La data de venciment ha passat"
    ElseIf sDate > sToday Then
        MsgBox "La data de venciment encara no ha passat"
    Else
        MsgBox "La data de venciment és avui"
    End If
End Sub

Ens cal la vostra ajuda!