Ajuda do Collabora Office 24.04
Define um ou mais blocos de instruções a serem executados a depender de uma condição dada ou quando a expressão é True.
If condition Then
statements
[{ElseIf|Else If} expression Then
statements]
[Else
statements]
{EndIf|End If}
Em vez de Else If pode-se usar ElseIf, em vez de End If pode-se usar EndIf.
Instruções If podem ser encurtadas em uma linha ao utilizar blocos de uma só instrução.
If condition Then statement [Else statement]
A instrução If... Then executa blocos de programa dependendo de determinadas condições. Quando o Collabora Office 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 Collabora Office 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.
Você pode usar GoTo e GoSub para sair de um bloco If...Then, mas não para entrar em uma estrutura If...Then.
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 sDate As String
Dim sToday As String
sDate = InputBox("Digite a data de vencimento (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 "A data de vencimento passou"
ElseIf sDate > sToday Then
MsgBox "A data de vencimento ainda não passou"
Else
MsgBox "A data de vencimento é hoje"
End If
End Sub