Instrução If...Then...Else

Define um ou mais blocos de instruções a serem executados a depender de uma condição dada ou quando a expressão é True.

Sintaxe:

Instrução If...EndIf


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

Pode-se escrever EndIf ou End If.

tip

Instruções If podem ser encurtadas em uma linha ao utilizar blocos de uma só instrução.



  If condition Then statement [Else statement]

Parâmetros:

A instrução If... Then executa blocos de programa dependendo de determinadas condições. Quando o LibreOffice Basic encontra uma instrução If, a condição é testada. Se a condição for True, todas as instruções subsequentes até a próxima instrução Else ou ElseIf são executadas. Se a condição for False, e for seguida de uma instrução ElseIf o LibreOffice Basic testa a próxima condição e executa as instruções seguintes se a condição for True. Se for False, o programa continua também com a próxima instrução ElseIf ou Else. As instruções após Else são executadas apenas se nenhuma das condições previamente testadas for True. Depois de avaliadas todas as condições e executadas as instruções correspondentes, o programa continua com a instrução após EndIf.

Você pode aninhar várias instruções If...Then.

As instruções Else e ElseIf são opcionais.

Ícone Aviso

Você pode usar GoTo e GoSub para sair de um bloco If...Then, mas não para entrar em uma estrutura If...Then.


Exemplo:

O exemplo a seguir permite que você insira a data de validade de um produto e determina se essa data já expirou.


Sub ExampleIfThenDate
    Dim sInput As String
    Dim dInput As Date
 
  On Error Goto inputError
    sInput = InputBox("Digite a data de vencimento (YYYY-MM-DD)")
    dInput = DateValue(sInput)
 
    If dInput < Date() Then
        MsgBox "A data de vencimento passou"
    ElseIf dInput > Date() Then
        MsgBox "A data de vencimento ainda não passou"
    Else
        MsgBox "A data de vencimento é hoje"
    End If
 
inputError:
    If dInput = 0 Then MsgBox "Entrada inválida"
End Sub

Instrução Select Case

Funções Iif ou Switch

♥ Doe para nosso projeto! ♥