Comment trouver la position d'un caractère dans une cellule ? Deux fonctions Excel sont à votre disposition ; CHERCHE et TROUVE.
Paramètres des fonctions CHERCHE et TROUVE
Les fonctions CHERCHE et TROUVE retournent la position d'un caractère à l'intérieur d'une cellule. Les fonctions nécessitent 2 paramètres (et un troisième optionnel)
- Le ou les caractères à rechercher
Vous pouvez rechercher une lettre, un nombre, un symbole ou un texte
- Le Texte contenant les caractères recherchés
Généralement il faut indiquer la cellule qui contient le texte
- [optionnel] La position où commencer la recherche
Si omis, la recherche commence à la première position
La différence entre ces deux fonctions c'est la casse (différence entre les majuscules et minuscules)
- TROUVE est sensible à la casse
- CHERCHE ne fait pas de différence entre les caractères
Utilisation des fonctions CHERCHE et TROUVE
Généralement, trouver la position d'un caractère c'est nécessaire pour découper une chaîne de caractères. C'est ainsi qu'il fallait travailler pendant des années.
MAIS, de nouvelles fonctions Excel, disponiblent avec Excel 365, permettent de travailler sur vos chaînes de caractères avec beaucoup plus de facilités.
- Extraire les n premiers ou derniers mots à partir d'un délimiteur (TEXTE.AVANT et TEXTE.APRES)
- Fractionner un texte sur tous les délimiteurs (FRACTIONNER.TEXTE)
- Trouver un caractère en partant de la fin d'une chaîne de caractère
- Séparer un texte sur plusieurs délimiteurs différents
Exemple d'utilisation
Mais si vous ne travaillez pas avec la version d'Excel 365, voici comment il faut procéder pour découper un texte.
Dans l'exemple suivant, nous voulons extraire le nom de famille. Pour cela, il nous faut trouver la position de la première virugle dans chaque cellule/
=CHERCHE("/";A2)
Pour extraire la partie gauche, nous allons utiliser la fonction GAUCHE
=GAUCHE(A2;CHERCHE(",";A2)-1)
Le -1 est nécessaire pour ne pas renvoyer la virgule. Autrement, nous aurions retourné MILLET,
Pourquoi les fonctions peuvent renvoyer des erreurs ?
Le problème avec les fonctions CHERCHE et TROUVE c'est que si le caractère à rechercher n'est pas dans le texte de recherche, la fonction retourne une erreur. Pour contourner le problème, il suffit d'inclure la fonction CHERCHE dans une fonction SIERREUR.
=SIERREUR(CHERCHE(",";A2);"NBCAR(A2)"")
Conclusion
Si vous travaillez avec Excel 365, vous avez tout intérêt à utiliser les nouvelles fonctions.
- Elles sont plus simples à coder
- Elles sont plus performantes
- Elles offrent d'avantage de possibilités d'extraction
Golden
29/08/2021 @ 21:31
Bonjour,
J'aurais besoin de votre aide pour avoir une formule que je n'arrive pas à avoir jusqu'à maintenant.
Je veux bien avoir le dernier numéro après le 3ième point soustrait de 2.
Par exemple la valeur sur la cellule A = 192.168.1.120 je veux bien qu'elle soit 192.168.1.118 dans la cellule B
Sachant que le numéro après le 3ième point peut contenir un chiffre, deux chiffres, ou 3 chiffres.
Merci d'avance
Frédéric LE GUEN
05/09/2021 @ 10:25
Le plus simple c'est d'appliquer une transformation avec Power Query. L'option "Séparer sur un délimiteur" va parfaitement vous aider
Valer
20/08/2020 @ 05:39
Bonjour,
j'aurais besoin de votre aide pour réaliser la suivante:
1-Ouvrire un Tableau Excel, où chaque cellule contient un nombre de 3 chiffres
2-Selectionner une partie ou tout le Tableau
3-Lancer une recherche de comparaison des cellules entres elles dont le résultat devra afficher toutes les combinaisons possibles.
Exemple 1, s'il existe deux cellules ou plus, contenant 123, 132, 321...,alors Resultat: l'une d'elles s'affiche.
Exemple 2: s'il existe deux cellules ou plus, contenant 121, 211..., alors Resultat: l'une d'elles s'affiche.
Exemple 3: Si le contenue d'une cellule est unique, alors rien ne s'affiche.
Merci déjà.
Jean-Philippe
21/07/2019 @ 23:17
Bonjour je n'arrive pas à extraire la ville d'un texte de type "1 Rue Charles Garnier 93400 SAINT-OUEN" je pensai utiliser le 1e espace en partant de la droite du texte mais une formule comme =DROITE(R11;CHERCHE(" ";R11)-1) ne fonctionne pas.
Merci pour votre aide
Frédéric LE GUEN
22/07/2019 @ 07:12
Bonjour,
Essayez d'utiliser le remplissage instantané, c'est exactement ce qu'il vous faut dans ce cas de figure
Anonyme
19/05/2013 @ 08:06
=GAUCHE(A2;CHERCHE("/";A2))-1
sinon on a le / avec le numéro de téléphone
Clovis Rabut
23/01/2019 @ 10:26
Merci beaucoup.
je me creusais la tête pour palier à cela 🙂