Como: Executar instruções conforme em um ou mais condições
Você pode usar um Declaração If...Then... (Visual Basic) para executar uma declaração específica ou um bloco de declarações dependendo do valor Tipo de dados booleanos (Visual Basic) de uma condição.A condição normalmente resulta de uma comparação entre dois valores, mas ele pode ser qualquer expressão avaliada como um valor Boolean (True ou False).Isso inclui valores de outros tipos de dados, como tipos numéricos, que foram convertidos em Boolean.
Para executar uma ou mais declarações se uma condição for True
Se você tiver apenas uma declaração para ser executada, use a sintaxe de uma linha da construção If... Then. .. Else .Não são necessárias declarações Else ou End If.O exemplo a seguir ilustra isto:
Sub fixDate() Dim myDate As Date = #2/13/1973# If myDate < Now Then myDate = Now End Sub
- ou -
Para executar mais de uma linha de código quando a condição for True,use a sintaxe de várias linhas, que inclui a declaração End If.Se você não tiver nenhum código a ser executado quando a condição for False, você omite a instrução Else.O exemplo a seguir ilustra isto:
Dim alertLabel As New System.Windows.Forms.Label Sub alertUser(ByVal value As Long) If value = 0 Then alertLabel.ForeColor = System.Drawing.Color.Red alertLabel.Font = New Font(alertLabel.Font, _ FontStyle.Bold Or FontStyle.Italic) End If End Sub
Para executar algumas declarações se uma condição for True e outros se for False
Usar um If... Then... Else construção com o Else (Visual Basic) demonstrativo para definir dois blocos de instruções. Visual Basic executa um bloco se a condição for True e o Outros se for False. O exemplo a seguir ilustra isto:
Dim alertLabel As New System.Windows.Forms.Label Sub alertUser(ByVal value As Long) If value = 0 Then alertLabel.ForeColor = System.Drawing.Color.Red alertLabel.Font = New Font(alertLabel.Font, _ FontStyle.Bold Or FontStyle.Italic) Else alertLabel.Forecolor = System.Drawing.Color.Black alertLabel.Font = New Font(alertLabel.Font, _ FontStyle.Regular) End If End Sub
Para testar condições adicionais se a primeira condição for False
Use uma construção If... Then... Else com uma ou mais declarações ElseIf (Visual Basic) para testar condições adicionais se a primeira condição for False .No exemplo a seguir, o procedimento Function calcula um bônus de folha de pagamento com base na classificação de desempenho.O bloco de declaração após a instrução Else executa somente se as condições na caixa If e ElseIf instruções são todos os False.
Function bonus(ByVal performance As Integer, ByVal salary As Decimal) _ As Decimal If performance = 1 Then Return salary * 0.1 ElseIf performance = 2 Then Return salary * 0.09 ElseIf performance = 3 Then Return salary * 0.07 Else Return 0 End If End Function
Visual Basic testa as condições na ordem em que elas aparecem nas declarações If... Then... Else.Quando encontra uma condição True ou uma declaração Else, ele executa o bloco de declaração correspondente.O controle, em seguida, passa para a instrução após a declaração End If.
Você pode ter qualquer número de declarações ElseIf, ou nenhuma.Você pode incluir ou omitir uma declaração Else independentemente de se ter quaisquer declarações ElseIf.
Consulte também
Tarefas
Como: transferência controle fora de uma estrutura de controle
Como: Testar vários valores de uma expressão
Como: Manter o controle quando ocorre um erro
Conceitos
Estruturas de controle aninhadas