fonction left

pierre35000

XLDnaute Nouveau
Bonjour,
disposant d'une première colonne où apparaissent mes noms et d'une deuxième colonne où apparaissent mes prénoms, j'ai besoin de mettre les initiales dans la 3ème colonne à l'aide de la fonction left sous la forme "Première lettre de la colonne noms . première lettre de la colonne prénoms"
Par exemple, pour "FERNANDEZ François", je dois avoir "F.F" dans ma troisième colonne.
Quelqu'un aurait-il le calcul à faire pour obtenir ces initiales?
Merci.
 

Tibo

XLDnaute Barbatruc
Re : fonction left

Bonsoir,

J'ai traité récemment le problème suite à une question posée par un Forumeur.

Je te joins le fichier correspondant.

Avec les Noms Prénoms en colonne A, cette formule matricielle en B1 :

Code:
=SI(OU(A1="";SOMMEPROD((CODE(STXT(A1&"[";LIGNE(INDIRECT("1:"&NBCAR(A1)+1));1))
>96)*1)=0);A1;GAUCHE(A1;EQUIV(VRAI;CODE(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));
1))>96;0)-1))&SI(MAX((CODE(STXT(A1&"[";LIGNE(INDIRECT("1:"&NBCAR(A1)+1));1))<91)
*LIGNE(INDIRECT("1:"&NBCAR(A1)+1)))=EQUIV(VRAI;CODE(STXT(A1&"µ";LIGNE(INDIRECT(
"1:"&NBCAR(A1)+1));1))>96;0)-1;"";" "&STXT(A1;MAX((CODE(STXT(A1;LIGNE(INDIRECT(
"1:"&NBCAR(A1)));1))<91)*LIGNE(INDIRECT("1:"&NBCAR(A1))));1))

Formule matricielle à valider par CTRL + MAJ + ENTREE

Cette formule permet de gérer les noms composés ainsi que les prénoms composés. Elle permet de gérer également les noms sans prénom.

Le principe est basé sur le fait que le prénom est le premier mot qui contient une lettre minuscule.

Voir le fichier joint.

On peut cependant faire plus simple si on a que des noms simples et des prénoms simples.

Bonne soirée

@+
 

Pièces jointes

  • Nom_Initiales_Prénom.zip
    2.2 KB · Affichages: 38

Tibo

XLDnaute Barbatruc
Re : fonction left

Salut Job,

Effectivement, en ce qui me concerne, c'est le niveau de ma vue qui baisse ...

J'avais lu trop rapidement et ayant traité un sujet similaire (sur un autre Forum), je n'ai pas pensé à relire en détail l'exposé de notre ami Pierre.

Le voila maintenant avec 2 solutions. La bonne : la tienne et la moins bonne : la mienne, mais qui pourra peut-être resservir un jour

Bonne soirée.

@+
 

Brigitte

XLDnaute Barbatruc
Re : fonction left

Bonsoir,

Et si le prénom est composé ?

Bravo à tous, particulièrement à Tibo, dont je suis fan des super formules à rallonge auxquelles je ne comprends strictement rien.

Bonne soirée.

Bisous Tibo (pas de jaloux, c'est parce qu'on se connaît en vrai.....)
 

Tibo

XLDnaute Barbatruc
Re : fonction left

Bonsoir Brigitte,

et bises également.

Pour un prénom composé :

Code:
=SI(NBCAR(SUBSTITUE(B1;"-";" "))-NBCAR(SUBSTITUE(SUBSTITUE(B1;"-";" ");" ";""))
=0;GAUCHE(B1);GAUCHE(B1)&STXT(SUBSTITUE(B1;"-";" ");TROUVE(" ";SUBSTITUE(B1;"-";
" "))+1;1))

Le principe :

- remplacer l'éventuel trait d'union par un espace et compter le nombre d'espaces.

- s'il y a un espace, c'est que c'est un prénom composé. Auquel cas, on prend le 1er caractère ainsi que celui qui suit l'espace.

Et voilou pour la tentative d'explication.

Bonne soirée.

@+
 

Brigitte

XLDnaute Barbatruc
Re : fonction left

Merci Tibo... Je croyais que ta première et grande formule faisait ca !!! et donc pensais qu'elle était préférable pour cette éventuelle raison. Mais en fait, il faut faire différemment ?

Non que j'en ai besoin, mais c'était pour savoir dans la proposition de job75 ce qui se passait dans le cas d'un prénom composé.

Merci en tout cas POUR cette explication/décomposition de ta formule, très claire.
 

Tibo

XLDnaute Barbatruc
Re : fonction left

re,

Brigitte, la première formule que j'avais proposé, c'est quand le nom et le prénom sont dans la même cellule. Il faut alors trouver où commence le prénom et déterminer les initiales du prénom (1 ou 2 si prénom composé).

La denière formule est basé sur le prénom tout seul dans une cellule. Là, plus besoin de chercher après le prénom, puisque la cellule ne contient que le prénom.

Voilou

@+
 

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87