Recuperer premire lettre d'une cellule

V

VB@D

Guest
Bonsoir le forum

Voila mon probleme

Dans la colonne A il y a 2 mots séparer par un espace. Je voudrais récuperer par formule ou vba dans la colonne B la premiere et la derniere lettre du premier mot et la premiere du second.

Je donne un exemple pour clarifier

En A1: Oncle Picsou donne en B1: OEP
En A2: Pierre DUPONT donne en B2: PED
En A3: ballon rond donne en B3: BNR

Merci de votre aide

Bye

VB@D
 
J

Jean-Marie

Guest
Bonsoir VB@D

Avec la fonction STXT

Pour le premier caractère =STXT(A1;1;1) ou =GAUCHE(A1;1)

Pour le deuxième caractère, il faut connaître le positionnement de l'espace soit avec la fonction CHERCHE ou TROUVE, donc =STXT(A1;CHERCHE(" ";A1)-1;1)

Et pour le dernier même fonction, mais le décalage de l'espace est de 1
=STXT(A1;TROUVE(" ";A1)+1;1)

La formule complète =STXT(A1;1;1)&STXT(A1;CHERCHE(" ";A1)-1;1)&STXT(A1;CHERCHE(" ";A1)+1;1).

Mais tu obtiendra OeP, pour mettre en majuscule =MAJUSCULE(.....)

Bonne soirée

@+Jean-Marie
 
J

Jean-Marie

Guest
Bonjour

en VBA, sur la base des explications

Avec la fonction MID

Pour le premier caractère =Mid(vCell,1,1) ou =Left(vCell,1)

Pour le deuxième caractère, il faut connaître le positionnement de l'espace soit avec la Méthode InStr, donc =Mid(A1,InStr(1,vCell;" ")-1,1)

Et pour le dernier même fonction, mais le décalage de l'espace est de 1
=Mid(A1,InStr(1,vCell," ")+1,1)

Mais tu obtiendra OeP, pour mettre en majuscule =UCase(.....)

Voici le code complet à mettre dans le module VBA, pour l'utiliser dans une formule écrit ceci =VBcar(A1)

Public Function VBcar(vCell As String) As String

VBcar = UCase(Mid(vCell, 1, 1) & Mid(vCell, InStr(1, vCell, " ") - 1, 1) & Mid(vCell, InStr(1, vCell, " ") + 1, 1))

End Function

Bonne soirée

@+Jean-Marie
 
M

michel

Guest
Bonjour VB@D , bonjour Jean Marie

ci joint une version par VBA

bon apres midi
Michel
lapin4.gif
 

Pièces jointes

  • initiales.zip
    8.3 KB · Affichages: 79
M

michel

Guest
bonjour jean marie

oouppss...excuse moi je n'avais pas vu ton deuxieme message .
tu as rèpondu pendant que je préparais mon fichier

je n'utilise pas de fonction mais le format de ma procedure est tres ressemblant de ta solution...;o)

bon appres midi à toi
Michel
lapin4.gif
 

Discussions similaires

$
Réponses
2
Affichages
2 K
$p00ky
$

Statistiques des forums

Discussions
314 085
Messages
2 105 645
Membres
109 407
dernier inscrit
gueric6