La fonction TROUVE ou comment séparer un champ en deux

Lorsque l’on récupère une base de données contenant des champs que l’on aurait aimé couper en deux (par exemple, nom et prénom) , on a plusieurs solutions : la première consiste à séparer les données manuellement (prévoir l’équivalent de 2 RTT quand la liste est longue…), la seconde à connaître Excel et ses fonctions.

Pour vous aider dans cette seconde option, je vais vous expliquer la fonction TROUVE et vous rappeler que l’on peut utiliser les fonctions GAUCHE et DROITE que nous avions déjà abordées.

Prenons un exemple simple et sa solution ci-dessous :

 

 

Tout d’abord, l’aide en ligne nous indique la définition suivante de la fonction TROUVE : « TROUVE recherche une chaîne de caractères au sein d’une seconde chaîne de texte et renvoit le numéro de la position de départ de la première chaîne de texte à partir du premier caractère de la seconde chaîne de texte. »

Pour être clair, si on cherche à connaître la position du « é » dans la cellule A3, il nous renverra 2, correspondant à la seconde lettre de la chaîne de caractère « Gérard Mensoif ».

 

La syntaxe de cette fonction est la suivante :

=TROUVE(texte_cherchétexte[N° de départ] )

dans mon exemple ci-dessus cela correspond à =TROUVE(« é »;A3)

 

Comme vous l’avez compris :

Texte_cherché correspond au caractère dont vous voulez connaître la position

Texte correspond à la chaîne de caractère dans laquelle vous voulez trouver le texte_cherché

[N° de départ] correspond au point de départ de la recherche de caractère, c’est à dire que si vous souhaitez commencer à chercher à partir de la 2ème ou 5ème position, vous l’indiquez ici (par défaut, elle commence toujours à la 1ère). Cette option est facultative mais pratique si vos chaînes commencent toutes par un # et que vous voulez le retrouver plus loin.

 

 

Maintenant que cette fonction n’a plus aucun secret pour vous, voyons comment l’utiliser dans notre problème de séparation des noms et prénoms.

Vous identifiez rapidement que les données se composent de Prénom, puis un espace, puis le Nom.

La fonction GAUCHE va nous permettre de sélectionner les données des prénoms mais le problème va être de connaître la longueur. Pour cela, nous utiliserons TROUVE pour connaître la position de l’espace et donc la longueur du prénom (si je retire 1 caractère car je ne veux pas prendre en compte l’espace).

 

Cela donne la formule suivante :

=GAUCHE(A3;TROUVE( » « ;A3)-1)

 

Enfin, pour trouver le nom, je vais utiliser la fonction DROITE. La longueur de la sélection dépendra du nombre de caractères de la cellule auquel je retire le nombre de caractères du prénom et celui de l’espace. J’utilise alors la fonction NBCAR, soit :

=DROITE(A3;NBCAR(A3)-NBCAR(B3)-1)

J’incrémente alors ces deux formules sur ma table entière et j’ai désormais deux champs supplémentaires, résultats de la séparation d’un seul, et cela en à peine 5 minutes (et je garde mes 2 RTT pour un week-end prolongé à Londres…).

 

Vous savez tout ! La fonction TROUVE est pour moi le parfait exemple de la fonction qui peut paraître complétement inutile mais qui, une fois imbriquée dans une autre, vous apporte un confort de traitement et une rapidité d’exécution appréciable.

 

Good split !

 



8 réflexions sur “La fonction TROUVE ou comment séparer un champ en deux”

  1. Très intéressant! Merci de l’astuce. Ma solution pour couper « nom-prénom » jusqu’à présent était de passer par Données- Convertir – (Délimiteur = espace). Efficace aussi.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.