Excel : vérifier qu'une cellule contient une sous-chaîne de caractères ?

Pour rechercher une chaîne de caractères dans une cellule, Excel fournit différentes fonctions.

Une cellule Excel peut contenir du texte d'une très grande longueur. Pour rechercher une chaîne de caractères dans une cellule à l'aide d'une formule, Excel fournit différentes fonctions que l'on peut utiliser.

La fonction SEARCH permet de rechercher la présence d'une chaîne dans une cellule. Elle retourne la position de la chaîne si elle la trouve. Si ce n'est pas le cas, elle renvoie la valeur #VALUE!. Si l'on souhaite que la formule utilise plutôt un booléen, on peut y ajouter la fonction ISNUMBER qui indique si la variable testée est un nombre.

<p>ISNUMBER(SEARCH(Texte &agrave; rechercher, A1))</p>

Cette formule affichera true si la chaîne Texte à rechercher est présente dans la cellule A1, false sinon. La fonction SEARCH est insensible à la casse. Elle retournera true si la cellule contient le texte TEXTE A RECHERCHER.

La fonction FIND() peut s'utiliser de la même manière que la fonction SEARCH, mais elle est sensible à la casse. Elle retourne le même résultat que la fonction SEARCH. Elle peut en plus accepter un troisième argument qui indique la position du premier caractère dans la cellule à partir duquel il faut démarrer les recherches.

<p>FIND(Texte &agrave; rechercher, A1, 10)</p>

Ici, la recherche ne démarrera qu'à partir du 10e caractère présent dans la cellule.

Si vous ne souhaitez pas utiliser la fonction ISNUMBER, la fonction ISERROR remplacera cette fonction. Elle prend comme argument une formule et renvoie true si un message d'erreur, par exemple #VALUE!, est retourné, false si la formule a réussi. En utilisant une condition, on peut afficher un message pour indiquer le résultat de la recherche :

<p>IF(ISERROR(FIND(Texte &agrave; rechercher, A1, 1)), PAS TROUVE, TROUVE)</p>

Divers