IIF
Função conhecida
como Se Imediato, é empregada para efetuar um teste lógico em uma expressão, e
dependendo do resultado do teste, retornar um ou outro valor obrigatório na
sintaxe da função. A função IIF possui a seguinte sintaxe:
IIF(Expressão, CasoVerdadeiro, CasoFalso)
Onde,
- Expressão: argumento obrigatório, constituindo-se de uma expressão matemática ou lógica inválida que se deseja avaliar;
- CasoVerdadeiro: argumento obrigatório, constituindo-se de uma expressão cujo valor será retornado se Expressão for verdadeira (True);
- CasoFalso: argumento obrigatório, constituindo-se de uma expressão cujo valor será retornado se Expressão for falsa (False).
As seguintes considerações são válidas para a função IIF:
- A função IIF() sempre avalia Expressão, CasoVerdadeiro e CasoFalso, independente de os mesmos serem expressões simples ou chamadas a outros procedimentos do projeto. Portanto, cuidado ao empregar funções e expressões nos argumentos CasoVerdadeiro e CasoFalso da função IIF(), pois podem ocorrer erros imprevisíveis no código (como por exemplo, a divisão por zero);
- Você pode aninhar funções IIF() nos argumentos CasoVerdadeiro e CasoFalso. Porém isto pode tornar seu código mais difícil de ser lido e mantido;
- Quando aninhar funções IIF(), você deverá verificar todos os parênteses de cada ninho, ou ocorrerá um erro de sintaxe.
Exemplo: O exemplo a seguir emprega um ninho de funções
IIF() 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. Observe que os valores dos argumentos são separados por
vírgulas e as casas decimais por pontos:
Public Function Alíquota(Salário as Currency) as single
Alíquota =
IIF(Salário < 1058.01,0,IIF((Salário < 1058.01 and Salário <
2115.01,0.15,0.27.5))
End Function
Até a Próxima!!
Nenhum comentário:
Postar um comentário