OVH Cloud OVH Cloud

Récupérer le NOM et le Prénom dans 2 textbox

18 réponses
Avatar
Didier
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre en
minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier

10 réponses

1 2
Avatar
PanZzaNni
Salut,

textbox1 = range("a1").text 'si le nom est dans la cellule a1
textbox2 = range("a2").text 'si le nom est dans la cellule a2

Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre en
minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier






Avatar
papou
Bonjour
Exemple (il y a certainement moyen de faire beaucoup plus court !) :
Si données en A1 et textbox Nom s'appelle TxtNom, textbox prénom TxtPrenom :
TxtNom = Left([A1], Application.WorksheetFunction.Find(" ", [A1], 1))
TxtPrenom = Trim(Mid([A1], Application.WorksheetFunction.Find(" ", [A1], 1),
Len([A1])))
Cordialement
Pascal

"Didier" a écrit dans le message de news:
e8d%
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre
en minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier






Avatar
Didier
Bonjour Panzzanni
Ce n'est pas cela, je vais essayé d'être plus clair
au départ j'ai dans la même cellule le NOM et le Prénom
je voudrai scinder cela afin d'avoir dans le textbox1 le NOM et dans le
textbox2 le Prénom
Merci
Didier


"PanZzaNni" a écrit dans le message de news:
ey$M%
Salut,

textbox1 = range("a1").text 'si le nom est dans la cellule a1
textbox2 = range("a2").text 'si le nom est dans la cellule a2

Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre
en minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier







Avatar
Didier
Merci Pascal en fait, le problème c'est l'espace.
Je pense contourner le pb, en récupérant dans le textbox1 les lettres en
majuscules, et dans le textbox2 les lettres en minuscules
Mais hélas, je ne sais pas l'écrire...
Didier

"papou" <cestpasbon@çanonplus44.fr> a écrit dans le message de news:

Bonjour
Exemple (il y a certainement moyen de faire beaucoup plus court !) :
Si données en A1 et textbox Nom s'appelle TxtNom, textbox prénom TxtPrenom
:
TxtNom = Left([A1], Application.WorksheetFunction.Find(" ", [A1], 1))
TxtPrenom = Trim(Mid([A1], Application.WorksheetFunction.Find(" ", [A1],
1), Len([A1])))
Cordialement
Pascal

"Didier" a écrit dans le message de news:
e8d%
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre
en minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier










Avatar
papou
Re
As-tu essayé ce que je t'ai proposé ?
Cela fonctionne sans problème avec les éléments que tu as fourni.
Ceci étant il y a effectivement beaucoup plus simple que ce que je t'ai
fourni :
tbl = Split(Range("A1").Text, , , vbTextCompare)
TxtNom= tbl(0)
TxtPrenom= tbl(1)

Cordialement
Pascal

"Didier" a écrit dans le message de news:

Merci Pascal en fait, le problème c'est l'espace.
Je pense contourner le pb, en récupérant dans le textbox1 les lettres en
majuscules, et dans le textbox2 les lettres en minuscules
Mais hélas, je ne sais pas l'écrire...
Didier

"papou" <cestpasbon@çanonplus44.fr> a écrit dans le message de news:

Bonjour
Exemple (il y a certainement moyen de faire beaucoup plus court !) :
Si données en A1 et textbox Nom s'appelle TxtNom, textbox prénom
TxtPrenom :
TxtNom = Left([A1], Application.WorksheetFunction.Find(" ", [A1], 1))
TxtPrenom = Trim(Mid([A1], Application.WorksheetFunction.Find(" ", [A1],
1), Len([A1])))
Cordialement
Pascal

"Didier" a écrit dans le message de news:
e8d%
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre
en minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier














Avatar
AV
au départ j'ai dans la même cellule le NOM et le Prénom
je voudrai scinder cela afin d'avoir dans le textbox1 le NOM et dans le
textbox2 le Prénom


Question récurrente pour laquelle il n'y a aucune solution 100% efficace.....

AV

Avatar
Didier
Merci Pascal cela fonctionne très bien comme la précédente
c'est vrai que si la personne a un nom composé : DURAND MICHAUX Bernard
cela pose un pb
merci pour cette procédure très efficace
Didier

"papou" <cestpasbon@çanonplus44.fr> a écrit dans le message de news:

Re
As-tu essayé ce que je t'ai proposé ?
Cela fonctionne sans problème avec les éléments que tu as fourni.
Ceci étant il y a effectivement beaucoup plus simple que ce que je t'ai
fourni :
tbl = Split(Range("A1").Text, , , vbTextCompare)
TxtNom= tbl(0)
TxtPrenom= tbl(1)

Cordialement
Pascal

"Didier" a écrit dans le message de news:

Merci Pascal en fait, le problème c'est l'espace.
Je pense contourner le pb, en récupérant dans le textbox1 les lettres en
majuscules, et dans le textbox2 les lettres en minuscules
Mais hélas, je ne sais pas l'écrire...
Didier

"papou" <cestpasbon@çanonplus44.fr> a écrit dans le message de news:

Bonjour
Exemple (il y a certainement moyen de faire beaucoup plus court !) :
Si données en A1 et textbox Nom s'appelle TxtNom, textbox prénom
TxtPrenom :
TxtNom = Left([A1], Application.WorksheetFunction.Find(" ", [A1], 1))
TxtPrenom = Trim(Mid([A1], Application.WorksheetFunction.Find(" ", [A1],
1), Len([A1])))
Cordialement
Pascal

"Didier" a écrit dans le message de news:
e8d%
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère
lettre en minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier


















Avatar
Rai
Bonjour,

1 solution :

initial = [A1]
For i = 1 To Len(initial)
If Mid(initial, i, 1) = UCase(Mid(initial, i, 1)) Then
Nom = Nom + Mid(initial, i, 1)
Else
PNom = Right(initial, Len(initial) - i + 2)
Nom = Left(Nom, i - 3)
Exit For
End If
Next i

Bonne continuation,

Rai

"Didier" a écrit dans le message de news: e8d%
Bonjour
J'ai dans une cellule 1 nom en majuscule et 1 prénom avec la 1ère lettre en
minuscule ex :
DURAND Patrick
je souhaite dans 2 textbox avec l'initialize du userform
dans le textbox1 avoir le nom en majuscule
dans le textbox2 avoir le prénom avec la 1ère lettre en minuscule
Comment écrire cela ?
Merci pour votre aide
Didier






Avatar
Rai
re-,

Un peut plus simple :

initial = [A1]
For i = 1 To Len([A1])
If Mid(initial, i, 1) <> UCase(Mid(initial, i, 1)) Then
PNom = Right(initial, Len(initial) - i + 2)
Nom = Left(initial, i - 3)
Exit For
End If
Next i

Ca fonctionne pour les noms composés, prénoms composés avec une seule restriction : la 2nde lettre du prénom doit être en minuscule ...

Rai


"Rai" a écrit dans le message de news:
Bonjour,

1 solution :

initial = [A1]
For i = 1 To Len(initial)
If Mid(initial, i, 1) = UCase(Mid(initial, i, 1)) Then
Nom = Nom + Mid(initial, i, 1)
Else
PNom = Right(initial, Len(initial) - i + 2)
Nom = Left(Nom, i - 3)
Exit For
End If
Next i

Bonne continuation,

Rai
Avatar
AV
Pour : DURAND DE LA GAFFELIERE Marcel Robert

Matricielle :
=GAUCHE(A1;EQUIV(VRAI;CODE(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1))>96;0)-3)&
"
"&STXT(A1;EQUIV(VRAI;CODE(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1))>96;0)-1;9^
9)

Mais bon faut quand même respecter certaines contraintes (maj/min/espace..)
AV
1 2