If...Then...Else
Instrução que
executa condicionalmente um grupo de instruções, dependendo do valor da
expressão testada, utilizando uma destas sintaxes:
If condição Then [Instruções] [Else Instruções]
Ou
If condição
Then
[Intruções]
[ElseIf OutraCondição Then
[Instruções]...
[Else
[Instruções]]
End If
Onde,
- Condição e OutraCondição: argumento obrigatório que indica uma expressão cujo valor retornado será avaliado para verdadeiro ou falso, ou uma expressão utilizando a instrução TypeOf <objeto> Is <TipoDeObjeto>, no qual verifica-se se o objeto desejado é ou não de um determinado tipo (Ex.: If TypeOf ctl Is TextBox);
- Intruções: argumento opcional, especifica o bloco de instruções a serem executadas em cada situação;
- Then: argumento obrigatório, especifica uma ou mais instruções a serem executadas quando Condição for verdadeira;
- Else: argumento opcional, especifica uma ou mais instruções a serem executadas quando Condição for false;
- ElseIf: argumento opcional, especifica um novo testa a ser executado, quando Condição for false.
As seguintes considerações são válidas para a instrução
If...Then...Else:
- Você pode empregar a sintaxe de uma única linha de código ou particioná-la em várias linhas. Tenha em mente que na sintaxe de uma única linha, ambas as expressões empregadas nas cláusulas Then e Else serão avaliadas, podendo provocar erros imprevisíveis, além de se tornar mais difícil de interpretar;
- Você pode ter quantas cláusulas ElseIf quiser em uma instrução If Then Else, porém apenas uma cláusula Else é permitida;
- Toda instrução If...Then...Else deve terminar obrigatoriamente com uma instrução End If;
- Empregue uma instrução Select Case no lugar de uma instrução If...Then...ElseIf que possua várias cláusulas ElseIf, pois ela avalia a condição a ser testada apenas uma vez, tomando seu código mais eficiente;
- A instrução TypeOf não pode ser empregada com variáveis que representam tipos de dados, tornando seu código mais eficiente.
Exemplo: O exemplo a seguir demonstra como empregar uma
instrução If...Then...Else para atribuir diferentes alíquotas de imposto de
renda, válidas para o ano de 2003 no Brasil, dependendo do valor do salário
passado como argumento para o procedimento:
Public Function Alíquota(Salário Currency, Optional Redução
as Currency) as single
If Salário <
1058.01 Then
Alíquota = 0
ElseIf Salário
>= 1058.01 and Salário < 2115.01 Then
Alíquota = 0.15
Redução =
158.70
ElseIf Salário
> 2115.01 and Salário < 12696 Then
Alíquota =
0.275
Redução =
423.08
Else
Alíquota = 0.3
End If
End Function
A próxima
instrução emprega uma instrução TypeOf para definir a propriedade Transparent
para True de um botão de comando:
If TypeOf
ctl is CommandButton Then
Ctl.Transparent = True
End If
Finalmente, a próxima instrução empregada uma única linha de
código para retornar a raiz quadrada de um número qualquer apenas se o número
for positivo:
Public Function RaizQuadrada() as Doublé
If Número
> 0 Then RaizQuadrada = Número ^ 0.5 Else RaizQuadrada = 0
End Function
Até a Próxima!!
Nenhum comentário:
Postar um comentário