Salut l'équipe,
pour terminer l'explication d'Eriiic et si c'est toi qui crée cette liste, peut-être peux-tu alors te permettre d'utiliser la virgule comme séparateur entre les différents éléments?
De la Poulardière, Pierre Edouard, palefrenier du Roi"
... ce qui ne nous garantit toujours pas l'ordre entre NOM et Prénom.
Claude, François, chanteur
...
Donc, dans ton cas, personnellement, le meilleur système, je pense...
acteur, Pierre, RICHARD / Pierre, acteur, RICHARD / RICHARD, acteur, Pierre
... est la meilleure solution qui te permettra de retrouver tes jeunes facilement.
Sachant que le code ASCII des majuscules va de 65 à 90, celui des minuscule de 97 à 122, avec l'excellente relation d'Eriiic, Pierre Edouard, palefrenier du Roi, DE LA POULARDIERE en [A1], tu peux faire...
Dim tSplit, sNOM$, sPrénom$
'
tSplit = Split([A1], ",")
For x = 0 To UBound(tSplit)
If Asc(Left(tSplit(x), 1)) < 95 Then
If Asc(Right(Trim(tSplit(x)), 1)) < 95 Then sNOM = Trim(tSplit(x))
If Asc(Right(Trim(tSplit(x)), 1)) > 95 Then sPrénom = Trim(tSplit(x))
End If
Next
MsgBox sNOM & " " & sPrénom
L'usage de TRIM permet de se prémunir d'un souci d'encodage.
J'aurais pu utiliser...
tSplit = Split([A1], ", ")
...avec ", [ESPACE]" comme délimiteur mais si l'espace venait à manquer, le résultat serait FAUX.
Avec mes remerciements à Eriiic pour le coup de main...
A+