
Il est courant d'avoir des conditions limitées à des valeurs spécifiques, qu'il s'agisse de données numériques ou alphanumériques. Dans ce cas, vous pouvez utiliser la fonction Match. Cette fonction conditionnelle spécialisée prend trois arguments ou plus. Le premier argument est évalué et utilisé comme valeur à mettre en correspondance. Le second argument est évalué et interprété comme une valeur booléenne. Si la valeur est vraie (autrement dit, si le second argument correspond au résultat du premier), le troisième argument est évalué et ce résultat est renvoyé par la fonction Match. Sinon, le troisième argument n'est pas évalué et la fonction Match renvoie une valeur manquante. Comme pour la fonction If, vous pouvez utiliser autant de paires d'arguments valeur/résultat que nécessaire. De même, lorsqu'un résultat vrai est renvoyé, l'argument impair correspondant est évalué, et aucun des arguments restants ne l'est. Il est également possible d'inclure un résultat else dans la fonction Match. L'utilisation de cet argument final facultatif garantit que la fonction ne renverra jamais de valeur manquante. Au lieu de cela, si aucun des arguments pairs précédents ne renvoie un résultat vrai, la fonction renvoie le résultat « else ». Une situation encore plus particulière se présente lorsque les conditions sont représentées par un index (c'est-à-dire une valeur entière supérieure à zéro). Dans ce cas, vous pouvez utiliser la fonction Choose, qui prend au moins deux arguments. Le premier argument est une expression évaluée et utilisée pour déterminer l'index de l'argument de résultat correct, puis le résultat correspondant est renvoyé comme résultat de la fonction Choose. Dans l'exemple présenté, nous utilisons la fonction Jour de la semaine, qui renvoie une valeur entière pour chaque jour de la semaine. Ainsi, si l'expression est évaluée à, par exemple, le troisième résultat (dans ce cas, mardi) est renvoyé. Contrairement aux fonctions If et Match, la fonction Choose ne renvoie jamais de valeur manquante. En revanche, si le résultat de l'expression est un index supérieur au nombre d'arguments de résultat, le dernier argument est évalué et renvoyé comme résultat de la fonction Choose.