XL 2019 Extraire les premières lettres d'un prénom et nom dans des colonnes

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 !

nel27

XLDnaute Nouveau
Bonjour,
mon problème est le suivant. J'ai 3 colonnes : une avec le prénom, une avec le nom et dans la troisième, je voudrais extraire les deux premières lettres des prénoms et noms. Jusque là pas de soucis avec la formule : =MAJUSCULE(GAUCHE(A1;2)&GAUCHE(B1;2)) placée dans ma troisième colonne.
Le hic, c'est lorsque les prénoms sont composés. Exemple pour Marie-Paule BOULIER j'ai : MABO alors que je voudrais MPBO. Uniquement les premières lettres des deux prénoms pour rester dans le format 4 caractères.
J'ai trouvé une solution avec la formule : =SIERREUR(STXT(C12;TROUVE("";A1);1);"")&SIERREUR(STXT(C12;TROUVE("-";A1)+1;1);"")&MAJUSCULE(GAUCHE(B1;2))

Existe-t-il une formule combinant ces deux formules me permettant d'avoir le bon résultat dans ma troisième colonne quelque soit le type de prénom renseigné?
En faite, je voudrais dupliquer ma formule sur toute la colonne et non pas en changer si mon prénom est composé.

En vous remerciant de votre aide.

Belle journée.
 
Bonjour nel27, fanch55

Avec une fonction VBA on ne se prend pas la tête :
VB:
unction Initiales$(t$)
Dim s
t = Replace(Replace(Replace(UCase(t), "-", " "), " DE ", " "), " LA ", " ")
t = Application.Trim(t) 'SUPPRESPACE
s = Split(t)
Select Case UBound(s)
    Case 0: Initiales = Left(t, 2)
    Case 1: Initiales = Left(s(0), 2) & Left(s(1), 2)
    Case Is > 1: Initiales = Left(s(0), 1) & Left(s(1), 1) & Left(s(2), 2)
End Select
End Function
Le code est placé impérativement dans un module standard.

A+
 

Pièces jointes

Bonjour,
Marie-Paule et Marie-Pierre, Marie-Christine et Marie-Chantal,Jean-Pierre et Jean-Paul etc ...
Comment avez-vous prévu de les discriminer ?
Bonjour Franch55, je ne pense pas les discriminer. Vu que je combine les premières lettres des prénoms composés avec les deux premières lettres du nom ( Marie-Pierre Olin me donnera MPOL et Marie-Paule Plan me donnera MPPL). Ce serait pas de chance que je tombe sur le même résultat.
 
Bonjour, @nel27, @job75
Une proposition par formule en pj

Edit : Bonjour, bien évidemment aussi à @fanch55 🙄
Bonjour Victor21, merci pour la réponse. Je vais testé par contre j'ai vu qu'il y avait une formule pour la récupération des initiales d'un prénom composé et une autre pour la récupération des deux premières lettres d'un prénom simple.
Si ce n'est pas abusé, serait-il possible de combiner ces deux formules?
Merci beaucoup.
 
Bonjour.
Une seule formule en colonne C,
VB:
=SI(ESTNUM(TROUVE("-";A2));STXT(A2;1;1)&STXT(A2;TROUVE("-";A2)+1;1);STXT(A2;1;2))&STXT(B2;1;2)
que le prénom soit simple ou composé (avec un tiret entre les deux parties).
La formule en colonne D passe tout en majuscule, même si les données ne le sont pas
 
- 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

Discussions similaires

Réponses
4
Affichages
464
  • Question Question
Microsoft 365 Nom et prénom
Réponses
3
Affichages
453
Retour