IBM Lotus Symphony
|
Define um ou mais blocos de instruções que só se pretenda executar se uma certa condição for True.
If condition=true Then Statement block [ElseIf condition=true Then] Statement block [Else] Statement block EndIf Instead of Else If you can write ElseIf, instead of End If you can write EndIf.
A instrução If...Then executa blocos de programas dependendo de certas condições. Quando o Lotus® Symphony™ Basic encontra uma instrução If, a condição é testada. Se a condição for True, todas as instruções seguintes até à próxima instrução Else ou ElseIf são executadas. Se a condição for False, e for seguida por uma instrução ElseIf, o Lotus Symphony Basic testa a condição seguinte e executa as instruções seguintes se a condição for True. Se for False, o programa continua com a próxima instrução ElseIf ou Else. As instruções que se seguem a Else só são executadas 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 que se segue a EndIf.
É possível imbricar múltiplas instruções If...Then.
As instruções Else e ElseIf são opcionais.
![]() |
Pode utilizar GoTo e GoSub para sair de um bloco If...Then, mas não para entrar numa estrutura If...Then. |
O seguinte exemplo permite-lhe introduzir a data de validade de um produto e determina se esta já passou.
Sub ExampleIfThenDate
Dim sDate as String
Dim sToday as String
sDate = InputBox("Enter the expiration date (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 "The expiration date has passed"
ElseIf sDate > sToday Then
MsgBox "The expiration date has not yet passed"
Else
MsgBox "The expiration date is today"
End If
End Sub