Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Bonsoir le forum,
Je cherche à utiliser une liste de noms qui ne contiendrait que les 2 premiers mots.
Par exemple, "GROUPE NORMANDIE METALS UNITED" deviendrait "GROUPE NORMANDIE".
Dites moi si vous avez une solution
Seydina
Une formule qui fonctionne s'il n'y a pas d'espace ni en tête ni en queue, s'il n'y a pas d'espaces multiples et même s'il n'y a qu'un seul mot voire en cas de chaine vide : =GAUCHE(E2;CHERCHE(" ";SUBSTITUE(E2&" ";" ";CAR(1);1))-1)
Si le texte peut contenir des espaces (multiples ou non) en tête, au milieu ou en queue, alors préférez : =GAUCHE(SUPPRESPACE(E2);CHERCHE(" ";SUBSTITUE(SUPPRESPACE(E2)&" ";" ";CAR(1);1))-1)
Bonsoir le forum,
Je cherche à utiliser une liste de noms qui ne contiendrait que les 2 premiers mots.
Par exemple, "GROUPE NORMANDIE METALS UNITED" deviendrait "GROUPE NORMANDIE".
Dites moi si vous avez une solution
Seydina
[EDIT] Oups, pardon djidji59430, je n'avais pas vu ta réponse, plus concise mais utilisable seulement avec Office 365, avant de poster la mienne. [/EDIT]
Hello,
comme tu es en Office 365 tu dois pouvoir utiliser les expressions régulières. Tu peux essayer :
Code:
=REGEXEXTRACT(A1;"[^ ]+\s+[^ ]+")
explication du motif [^ ]+ un ou plusieurs caractères qui ne sont pas un espace \s+ suivi d'un ou plus caractères d'espacement [^ ]+ suivi d'un ou plusieurs caractères qui ne sont pas un espace.
Comme je n'ai pas Excel 365 j'ai essayé dans Excel OnLine 365 :
A noter qu'avec la formule de djidji59430 il y a une erreur avec ce texte :
[EDIT] A noter aussi que quand il y a un seul mot la formule de Sylvanu renvoie ce mot tandis que
le Regex renvoie une erreur ce qui est logique puisque l'expression régulière n'est pas trouvée. si on veut le même comportement que la formule de Sylvanu il faut mettre :
Code:
=REGEXEXTRACT(A1;"[^ ]+\s*[^ ]*")
( * = 0 ou plus)
et à noter aussi que si il y a plusieurs espaces entre chaque mot la formule de Sylvanu ne fonctionne plus.
Et pour ceux qui n'ont pas excel 365 avec mon complément XlDnaLibJP la formule :
Une formule qui fonctionne s'il n'y a pas d'espace ni en tête ni en queue, s'il n'y a pas d'espaces multiples et même s'il n'y a qu'un seul mot voire en cas de chaine vide : =GAUCHE(E2;CHERCHE(" ";SUBSTITUE(E2&" ";" ";CAR(1);1))-1)
Si le texte peut contenir des espaces (multiples ou non) en tête, au milieu ou en queue, alors préférez : =GAUCHE(SUPPRESPACE(E2);CHERCHE(" ";SUBSTITUE(SUPPRESPACE(E2)&" ";" ";CAR(1);1))-1)
Ta formule modifiée donne les mêmes résultats que ma 2ème formule (pour tenir compte du cas où A2 est vide et/ou si on a des espaces multiples) : =SI(E2="";"";REGEX.EXTRAIRE(SUPPRESPACE(E2);"[^ ]+\s*[^ ]*";0))
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD