Fonction IIf

Renvoie un des deux résultats de fonction possibles, en fonction de la valeur logique de l'expression évaluée.

Syntaxe :


IIf (Bool As Boolean, Variant1 As Variant, Variant2 As Variant) As Variant

Paramètres :

Bool: Any expression that you want to evaluate. If the expression evaluates to True, the function returns the value of Variant1, otherwise it returns the value of Variant2.

Variant1, Variant2: Any expression, one of which will be returned as the function result, depending on the logical evaluation.

note

IIf evaluates both Variant1 and Variant2 even if it returns only one of them. If one of the expressions results in error, the function returns the error. For example, do not use IIF to bypass a possible division by zero result.


Codes d'erreur :

5 appel de procédure incorrect

Exemple :


REM renvoie 3 valeurs au maximum
Function Max (A As Double, B As Double, C, As Double) As Double
    Max = IIf( A >= B, A, B)
    Max = IIf( C >= Max, C, Max)
End Function
REM Mauvais utilisation de la fonction IIf
Function Inverse(A As Double) As Double
    Inverse = IIf( A = 0, 0, 1/A )
End Function

Instructions If ou Select Case

Fonction Switch