Formule Excel: IF avec caractères génériques -

Formule générique

=IF(COUNTIF(A1,"??-????-???"),"","invalid")

Sommaire

La fonction IF ne prend pas en charge les caractères génériques, mais vous pouvez combiner IF avec COUNTIF ou COUNTIFS pour obtenir la fonctionnalité de base des caractères génériques. Dans l'exemple illustré, la formule en C5 est:

=IF(COUNTIF(B5,"??-????-???"),"","invalid")

Explication

Contrairement à plusieurs autres fonctions fréquemment utilisées, la fonction IF ne prend pas en charge les caractères génériques. Cependant, vous pouvez utiliser les fonctions COUNTIF ou COUNTIFS dans le test logique de IF pour les fonctionnalités génériques de base.

Dans l'exemple illustré, la formule en C5 est:

=IF(COUNTIF(B5,"??-????-???"),"","invalid")

Travaillant de l'intérieur vers l'extérieur, le test logique à l'intérieur de la fonction IF est basé sur la fonction COUNTIF:

COUNTIF(B5,"??-????-???")

Ici, COUNTIF compte les cellules qui correspondent au modèle "?? - ???? - ???", mais comme la plage est juste une cellule, la réponse est toujours 1 ou zéro. Le caractère générique du point d'interrogation (?) Signifie "un caractère", donc COUNTIF renvoie le numéro 1 lorsque le texte se compose de 11 caractères avec deux tirets, comme décrit par le modèle. Si le contenu de la cellule ne correspond pas à ce modèle, COUNTIF renvoie zéro.

Lorsque le nombre est égal à 1, la fonction IF renvoie une chaîne vide (""). Lorsque le nombre est égal à zéro, IF renvoie le texte "invalide". Cela fonctionne à cause de la logique booléenne, où le nombre 1 est évalué comme TRUE et le nombre zéro est évalué comme FALSE.

Alternative avec fonction RECHERCHE

Une autre façon d'utiliser des caractères génériques avec la fonction IF consiste à combiner les fonctions SEARCH et ISNUMBER pour créer un test logique. Cela fonctionne car la fonction RECHERCHE prend en charge les caractères génériques. Cependant, SEARCH et ISNUMBER effectuent ensemble automatiquement une correspondance "contient-type", de sorte que les caractères génériques ne sont pas toujours nécessaires. Cette page montre un exemple de base.

Articles intéressants...