.net, c#, sql et autres technos.
[EXCEL] Comment tester si une chaine de caractères contient une autre chaine
TweeterPetite problématique du jour avec Excel, ou l’on m’a demandé de lister toutes les cellules qui contenait une chaine de caractères spécifique.
Nous allons donc voir comment écrire une formule Excel qui va nous permettre d’afficher une valeur dans une cellule indiquant la présence ou non d’une chaine de caractères dans une chaine d’une autre cellule.
Pour écrire cette formule, et donc faire cette recherche, trois fonctions Excel sont nécessaires:
- CHERCHE
- ESTERREUR
- SI
- CHERCHE va renvoyer la position de la 1ère chaine dans la seconde si cette chaine contient la première. Si la première chaine n’est pas trouvée la fonction renvoie l’erreur « #valeur!«
- ESTERREUR teste si la valeur retournée pour une fonction Excel (ici CHERCHE) est une erreur ou non et renvoie un booléen
- SI est une fonction if classique qui en fonction d’un booléen (vrai ou faux ici renvoyé par ESTERREUR) va nous permettre d’afficher une valeur ou une autre.
La formule de recherche de texte
Il nous faut donc écrire le code suivant:
=SI(ESTERREUR(CHERCHE("chaine à chercher";N° Cellule));"non";"oui")
Exemple:
L’exemple suivant va vérifier si la chaine de caractères contenue dans la cellule A6 de la feuille en cours contient le texte « chaine à chercher ».
Si c’est le cas la valeur « oui » apparaitra dans la cellule dans laquelle est copiée la formule.
Sinon ce sera la valeur « non ».
=SI(ESTERREUR(CHERCHE("chaine à chercher";A6));"non";"oui")
Voilà j’espère que cette formule vous a été utile. Si vous trouvez un moyen de l’améliorer n’hésitez surtout pas à m’en faire part. Et sinon, pour aller plus loin avec votre tableur Office je vous conseille ces lectures :
Comment afficher un zéro par défaut dans les cellules avec Excel?
Comment comptabiliser des cellules en fonction d’un critère avec Excel?
Comment lire gratuitement un fichier Excel enregistré au format XLSX?
Mot-clé principal : Excel tester chaine caracteres contient
Mots clefs liés à cet article:
- excel contient
- excel chaine contient
- excel si contient
- excel contient chaine
- contient excel
- fonction contient excel
- excel chaine de caractere contient
- fonction excel contient
- excel contient chaine de caractere
- excel formule contient
Imprimer l'article | Cette entrée a été posté par adminArnaud le 1 septembre 2010 à 15 h 44 min, et placée dans Excel, Office. Vous pouvez suivre les réponses à cette entrée via RSS 2.0. Vous pouvez laisser une réponse, ou bien un trackback depuis votre site. |
about 3 years ago
Merci pour cette formule permettant de tester la présence ou non d’une chaîne de caractères dans une cellule.
Elle est très utile.
Cordialement.
about 3 years ago
Merci Ordipb, et si tu as d’autres idées de formule pour Excel à écrire n’hésite pas à demander.
about 2 years ago
Bonjour,
Je cherche à trouver si un des caractères d’une chaine se trouve ou non dans une autre, est ce possible ?
Ex : si je trouve un des caractères de « ghijklmnopqrstuvwxyz » dans « 00-ff-aa-bb-11-00 » je sais alors que cette dernière n’est pas hexadécimale (je ne peux pas utiliser la fonction hexdec, la valeur hexa fait plus de dix caractères héxa).
Merci
Patrice
about 2 years ago
Bonjour Patrice,
Une solution consiste a décomposer votre chaine (ici par rapport au signe – ) et a tester chacune des valeurs avec HEXDEC.
(la formule risque d’etre un peu longue pour que ce soit generique….)
Sinon le plus simple serait de passer par du VBA.
about 2 years ago
Merci
about 2 years ago
Merci pour cette formule : c’est exactement ce que je cherchais ! C’est le ESTERREUR qui m’éclaire le plus.
about 2 years ago
De rien Goelano, si tu as des exemples d’utilisation de cette formule n’hésites pas a en parler ici 🙂
about 8 months ago
merci beaucoup
about 7 months ago
bonjour
j’ai 3 cellules contiens des nombre :
par exemple :
3
2
1+2,5
dans la 4 cellules je veux faire la somme des 3 cellules merci .
about 1 month ago
Bonjour Abdouel,
Ta question n’a pas de rapport avec l’article…
Pour infos, sous excel pour faire une somme il faut utiliser la fonction Somme.