Microsoft 365 Reconstituer une liste

  • Initiateur de la discussion Initiateur de la discussion Seydina
  • Date de début Date de début

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 !

Seydina

XLDnaute Occasionnel
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
 

Pièces jointes

Solution
Bonjour à tous 🙂,

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
Bonsoir,
essayez cette formule, à recopier vers le bas :
VB:
=SIERREUR(STXT(E2;1;TROUVE(CAR(1);SUBSTITUE(E2;" ";CAR(1));TROUVE(CAR(1);SUBSTITUE(E2;" ";CAR(1));1)+1));E2)
Cordialement,

[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]
 
Dernière édition:
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 :
REGEXEXTRACT.png

A noter qu'avec la formule de djidji59430 il y a une erreur avec ce texte :
Lefevre relecture/correction
car il n'y a pas de deuxième espace.

[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 :
Code:
=REGEXEXTRACTJP(A1;"[^ ]+\s*[^ ]*";0)


Ami calmant, J.P
 
Dernière édition:
Bonjour à tous 🙂,

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)
 

Pièces jointes

Dernière édition:
Notre forum d’entraide est 100 % gratuit et le restera.
Aucune formation payante, aucun fichier à acheter, rien à vendre. Mais comme tout site, nous devons couvrir nos frais pour continuer à vous accompagner.
Soutenez-nous en souscrivant à un compte membre : c’est rapide, vous choisissez simplement votre niveau de soutien et le tour est joué.

Je soutiens la communauté et j’accède à mon compte membre

Discussions similaires

Réponses
1
Affichages
335
Retour