Extraire le dernier mot d'une cellule
Résolu
mistouv
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
Aliboron Martin Messages postés 3560 Date d'inscription Statut Contributeur Dernière intervention -
Aliboron Martin Messages postés 3560 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je dispose d'une liste dans une feuille Excel de plusieurs milliers de livres triés par le nom de l'auteur.
Malheureusement, cette liste a été faite avec "Prénom Nom", ce qui fait qu'elle est triée par le Prénom en majeur.
Je voudrais trouver une astuce, ou une macro (ce dont je suis incapable...) pour extraire le dernier mot de chaque cellule et le mettre dans la colonne suivante.
Bien sûr, tous les "Pierre" sont ensemble, mais également les "Pierre-Marie", les "Pierre Marie", etc...
Je pourrais ainsi résoudre la majorité des cas, et en extrayant le dernier mot qui est souvent composé d'un seul tenant, je disposerais du nom de l'auteur.
Un grand merci d'avance.
Je dispose d'une liste dans une feuille Excel de plusieurs milliers de livres triés par le nom de l'auteur.
Malheureusement, cette liste a été faite avec "Prénom Nom", ce qui fait qu'elle est triée par le Prénom en majeur.
Je voudrais trouver une astuce, ou une macro (ce dont je suis incapable...) pour extraire le dernier mot de chaque cellule et le mettre dans la colonne suivante.
Bien sûr, tous les "Pierre" sont ensemble, mais également les "Pierre-Marie", les "Pierre Marie", etc...
Je pourrais ainsi résoudre la majorité des cas, et en extrayant le dernier mot qui est souvent composé d'un seul tenant, je disposerais du nom de l'auteur.
Un grand merci d'avance.
A voir également:
- Extraire le dernier mot d'une cellule excel
- Comment trouver le dernier mot d'une page web - Meilleures réponses
- Quel est le dernier mot de la 2e page pix - Meilleures réponses
- Extraire une video youtube - Guide
- Extraire le son d'une vidéo - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
3 réponses
Bonjour
Peut-être pourrais tu utiliser ceci:
1- sélectionne la colonne contenant les noms d'auteurs
2- ouvre le menu "Données -> Convertir"
3- coche "Délimité" puis clique sur "Suivant"
4- choisis "Espace" comme séparateur
5- regarde dans l'aperçu ce que cela donne:

6- si cela te convient, clique alors sur "Fin":

Ritchi
Peut-être pourrais tu utiliser ceci:
1- sélectionne la colonne contenant les noms d'auteurs
2- ouvre le menu "Données -> Convertir"
3- coche "Délimité" puis clique sur "Suivant"
4- choisis "Espace" comme séparateur
5- regarde dans l'aperçu ce que cela donne:

6- si cela te convient, clique alors sur "Fin":

Ritchi
Pour les cas de figure simples (un prénom et un nom séparés par un espace), tu peux assez facilement les extraire avec une formule :

Comme on le voit sur l'illustration, les choses se compliquent lorsqu'il y a plusieurs espaces, puisque la fonction TROUVE() recherche depuis la gauche et s'arrête au premier caractère trouvé. Il faudra donc reprendre les choses ensuite...
Plutôt qu'extraire le dernier mot d'une chaîne, on supprime le premier, en quelque sorte. ;-)

Comme on le voit sur l'illustration, les choses se compliquent lorsqu'il y a plusieurs espaces, puisque la fonction TROUVE() recherche depuis la gauche et s'arrête au premier caractère trouvé. Il faudra donc reprendre les choses ensuite...
Plutôt qu'extraire le dernier mot d'une chaîne, on supprime le premier, en quelque sorte. ;-)
Je complète : en cherchant un peu, j'ai trouvé une formule qui permet d'obtenir effectivement le dernier mot d'une chaîne sur cette page. Je l'ai un peu adaptée au contexte et voilà ce que ça donne :
=STXT(A1;CHERCHE("|";SUBSTITUE(A1;" ";"|";NBCAR(A1)-NBCAR(SUBSTITUE(A1;" ";""))))+1;100)
(en gros, elle fait une recherche du nombre d'espaces pour pouvoir partir du dernier)
Bon, pour des noms de famille comportant un espace (ex : van Damme), ça complique toujours un peu puisque ça ne prend que le dernier...
=STXT(A1;CHERCHE("|";SUBSTITUE(A1;" ";"|";NBCAR(A1)-NBCAR(SUBSTITUE(A1;" ";""))))+1;100)
(en gros, elle fait une recherche du nombre d'espaces pour pouvoir partir du dernier)
Bon, pour des noms de famille comportant un espace (ex : van Damme), ça complique toujours un peu puisque ça ne prend que le dernier...
Dans ce cas, il faut adapter un peu la formule pour qu'elle tienne compte différemment du nombre d'espaces présents dans la cellule. Cela devient :
=STXT(A1;CHERCHE("|";SUBSTITUE(A1;" ";"|";NBCAR(A1)-NBCAR(SUBSTITUE(A1;" ";""))-1))+1;100)
(c'est le -1 ajouté entre les parenthèses fermantes qui fait la différence !) ;-)
=STXT(A1;CHERCHE("|";SUBSTITUE(A1;" ";"|";NBCAR(A1)-NBCAR(SUBSTITUE(A1;" ";""))-1))+1;100)
(c'est le -1 ajouté entre les parenthèses fermantes qui fait la différence !) ;-)
Bonjour à tous,
Merci à vous deux d'avoir pris du temps pour m'aider à résoudre mon problème.
La formule =STXT(A1;CHERCHE..... fonctionne à la perfection.
En fait, j'avais commencé à essayer de gérer avec les séparateurs, mais bien sûr, les noms n'étaient pas dans la même colonne.
Il me faudra gérer manuellement les quelques noms composés, mais c'est vraiment dans très peu de cas.
Merci encore,
Merci à vous deux d'avoir pris du temps pour m'aider à résoudre mon problème.
La formule =STXT(A1;CHERCHE..... fonctionne à la perfection.
En fait, j'avais commencé à essayer de gérer avec les séparateurs, mais bien sûr, les noms n'étaient pas dans la même colonne.
Il me faudra gérer manuellement les quelques noms composés, mais c'est vraiment dans très peu de cas.
Merci encore,