OVH Cloud OVH Cloud

extraire des initiales

7 réponses
Avatar
Gilles
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par convertir),
plutot par une formule (gauche etc...), j'y arrive si le prénom et le nom
sont dans 2 cellules différentes, mais dans une cellule ????

merci d'avance

Gilles

7 réponses

Avatar
Nicolas B.
Salut Gilles,

=GAUCHE(A1;1)&GAUCHE(GAUCHE(A1;CHERCHE(" ";A1));1)


A+
--
Nicolas B.

Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsC


Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par
convertir), plutot par une formule (gauche etc...), j'y arrive si le
prénom et le nom sont dans 2 cellules différentes, mais dans une
cellule ????

merci d'avance

Gilles


Avatar
j
par ex :
=GAUCHE(A1;1)&DROITE(GAUCHE(A1;CHERCHE(" ";A1)+1);1)


"Gilles" a écrit dans le message de news:
3fc3bd4d$
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par convertir),
plutot par une formule (gauche etc...), j'y arrive si le prénom et le nom
sont dans 2 cellules différentes, mais dans une cellule ????

merci d'avance

Gilles




Avatar
Gilles
super merci !!!!!

Gilles
"Gilles" a écrit dans le message de news:
3fc3bd4d$
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par convertir),
plutot par une formule (gauche etc...), j'y arrive si le prénom et le nom
sont dans 2 cellules différentes, mais dans une cellule ????

merci d'avance

Gilles




Avatar
Christian
Bonjour Gilles
=GAUCHE(A1)&STXT(A1;TROUVE(" ";A1)+1;1)
Si tu veux comme initiale PPA, il te suffit de terminer
par 2 au lieu de 1.
Christian
-----Message d'origine-----
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans
passer par convertir),

plutot par une formule (gauche etc...), j'y arrive si le
prénom et le nom

sont dans 2 cellules différentes, mais dans une
cellule ????


merci d'avance

Gilles


.



Avatar
Michel Gaboly
Bonjour,

La difficulté vient des noms composés ou multiples :

Jean-Louis Dubois pas d'espace entre Jean et Louis
John M Scott
Charles de Ceci de Cela ...



Bonjour Gilles
=GAUCHE(A1)&STXT(A1;TROUVE(" ";A1)+1;1)
Si tu veux comme initiale PPA, il te suffit de terminer
par 2 au lieu de 1.
Christian
-----Message d'origine-----
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans
passer par convertir),

plutot par une formule (gauche etc...), j'y arrive si le
prénom et le nom

sont dans 2 cellules différentes, mais dans une
cellule ????


merci d'avance

Gilles


.




--
Cordialement,

Michel Gaboly
http://www.gaboly.com


Avatar
Daniel.M
Bonjour,

Pour avoir toujours le premier et le dernier mot (lorsqu'il y en a plus de 2),
cette fonction VBA ferait l'affaire.

Il faut la copier dans un module VBA et l'invoquer comme suit:
=XtraireInitiales(A1)

C'est beaucoup moins rapide qu'une fonction native d'Excel mais ça traite des
cas plus complexes.

Salutations,

Daniel M.

Public Function XtraireInitiales(nom As String) As String
Dim RE As Object, MC As Object
Set RE = CreateObject("VBScript.RegExp")
RE.Ignorecase = True: RE.Global = True
RE.Pattern = "[a-z0-9çàâäéèêëìîïôöûü]+"
Set MC = RE.Execute(nom)
If MC.Count > 0 Then
If MC.Count = 1 Then
XtraireInitiales = Left(MC(0).Value, 1)
Else
XtraireInitiales = Left(MC(0).Value, 1) & _
Left(MC(MC.Count - 1), 1)
End If
End If
Set MC = Nothing: Set RE = Nothing
End Function


"Gilles" wrote in message news:3fc3bd4d$
Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par convertir),
plutot par une formule (gauche etc...), j'y arrive si le prénom et le nom
sont dans 2 cellules différentes, mais dans une cellule ????

merci d'avance

Gilles




Avatar
Frédéric Sigonneau
Bonsoir,

Une autre approche en VBA ?

Function Initiales(S)
Dim i&, j&, tmp$
For i = LBound(Split(S)) To UBound(Split(S))
tmp = Split(S)(i)
If InStr(1, tmp, "-") > 0 Then
For j = LBound(Split(tmp, "-")) To UBound(Split(tmp, "-"))
Initiales = Initiales & Left(Split(tmp, "-")(j), 1)
Next j
Else
Initiales = Initiales & _
IIf(LCase(Left(tmp, 2)) = "d'", Mid(tmp, 3, 1), Left(tmp, 1))
End If
Next
End Function

(tient compte des prénoms composés et d'une partie des noms à particules, mais
*la* solution qui tiendrait compte de tous les cas de figure possibles reste à
construire...)

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Hello,

Dans une cellule(A1) j'ai le nom suivant

Pierre Paul

je désire extraire les initiales "PP"(bien sur sans passer par convertir),
plutot par une formule (gauche etc...), j'y arrive si le prénom et le nom
sont dans 2 cellules différentes, mais dans une cellule ????

merci d'avance

Gilles