Texte

Extraire les derniers mots d’une cellule

Temps de lecture 2 minutes

Cet article va vous expliquer comment extraire les derniers mots d'une cellule à partir d'un caractère précis.

Les fonctions Textes indispensables

Excel possède un grand nombre de fonctions pour travailler les chaînes de caractères, comme GAUCHE, DROITE, STXT.

Il existe également les fonctions CHERCHE ou TROUVE qui retournent la position d'un caractère depuis le début d'une chaîne de caractères. La différence entre ces 2 fonctions c'est que l'un respecte la casse (majuscule / minuscule) et pas l'autre.

En combinant ces fonctions les unes avec les autres, il est possible d'extraire une partie d'une chaîne de caractères sans trop de difficultés comme nous l'avons vu dans cet exemple.

La fonction STXT vous permet d'extraire une partie à l'intérieur d'un texte

Mais il n'y a pas de fonction pour extraire les derniers mots depuis une chaîne de caractères

Trouver la dernière position d'un caractère spécifique

Nous avons détaillé dans cet article comment trouver la dernière position d'un caractère spécifique. avec la formule suivante.

=CHERCHE("µ";SUBSTITUE(A2;"\";"µ";NBCAR(A2)-NBCAR(SUBSTITUE(A2;"\";""))))

Nous allons repartir de l'étape qui nous a permis de remplacer uniquement le dernier "\" et nous allons voir comment utiliser ce résultat pour extraire les derniers caractères

Remplacement du dernier caractere de rupture

Nombre de caractères entre le caractère de rupture et la fin de chaîne

Cette étape peut sembler complexe mais en fait il n'en est rien. En fait, il suffit de retrancher de la longueur total de la chaîne, la position trouvée à l'étape précédente.

=NBCAR(B2)-CHERCHE("µ";B2)

Nb de caracteres apres le symbole µ

Extraire les derniers mots de chaîne de caractères

Il ne reste plus qu'à utiliser cette valeur dans la fonction DROITE pour obtenir les derniers caractères avec la formule suivante

=DROITE(B2;NBCAR(B2)-CHERCHE("µ";B2))

Extraire les derniers mots dune chaine de caracteres

Ecriture de toutes les étapes dans une seule formule

Pour éviter de découper votre extraction sur plusieurs colonnes, vous pouvez utiliser la formule suivante qui regroupe toutes les étapes précédentes

=DROITE(A2;NBCAR(A2)-CHERCHE("µ";SUBSTITUE(A2;"\";"µ";NBCAR(A2)-NBCAR(SUBSTITUE(A2;"\";"")))))

Si vous utilisez Microsoft 365, vous pouvez écrire votre formule dans une fonction personnalisée pour sécuriser l'écriture de votre formule. Ici, nous avons construits la formule qui a besoin de 2 paramètres ; le texte et le séparateur.

=LAMBDA(text;separateur;LET(lngtext;NBCAR(text);DROITE(text;lngtext-CHERCHE("µ";SUBSTITUE(text;separateur;"µ";lngtext-NBCAR(SUBSTITUE(text;separateur;"")))))))

Fonction personnalisee pour extraire les derniers mots

Related posts

Compter le nombre de caractères – Fonction NBCAR

Frédéric LE GUEN

Fonctions Texte (Droite, Gauche, Stxt, NbCar, …)

Frédéric LE GUEN

Trouver la position d’un caractère dans une cellule

Frédéric LE GUEN

Laissez un commentaire

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