Extraire un mot en majuscule

Bonjour,

J'ai déjà trouvé sur ce forum un début de solution. Reste la finition

Alors voilà, dans une phrase placée en cellule A1 je souhaite extraire le mot en majuscule (jusque là tout va bien) à partir du moment où il en contient plus d'une (et là ça coince).

Public Function majuscules(zone)

Dim sel As Object

Dim i As Integer

Application.Volatile

For Each sel In zone

For i = 1 To Len(sel)

If Asc(Mid(sel, i, 1)) > 64 And Asc(Mid(sel, i, 1)) < 91 Then

majuscules = majuscules & Mid(sel, i, 1)

End If

Next i

Next sel

End Function

Avec cet exemple : "Mode : Pull en V de la marque DELTA rouge et noir"

le résultat obtenu : MPVDELTA

alors que j'aurais souhaité : DELTA

Merci d'avance pour votre aide

Bonne journée

Lud

Bonjour

A tester

Public Function majuscules(zone)
Dim sel As Object
Dim i As Integer
  Application.Volatile
  For Each sel In zone
  For i = 1 To Len(sel)
    If Asc(Mid(sel, i, 1)) > 64 And Asc(Mid(sel, i, 1)) < 91 Then
      majuscules = majuscules & Mid(sel, i, 1)
    Else
      If Len(majuscules) = 1 Then majuscules = ""
    End If
  Next i
  Next sel
  If Len(majuscules) = 1 Then majuscules = ""

End Function

Bonne journée

C'est extra ! Merci beaucoup

Hello,

Merci pour cette fonction elle est extra,

par contre dans mon cas il subsiste un problème, la fonction ne respecte pas la casse ...

J'ai une liste de NOM + Prénom du type "DUCHEMOL Bernard"

et j'aimerai extraire le nom de famille , jusque là la fonction de Banzai64 marche très bien

mais quand j'ai un nom composé de type " DUCHEMOL-TARTEMPION Bernard"

ça coince et j'obtiens " DUCHEMOLTARTEMPION" alors que j'aimerai un espace entre les deux composantes du nom et obtenir "DUCHEMOL TARTEMPION"

Pour tout dire, mon objectif final est d'obtenir à la fin Prénom + Nom dans cet ordre, "Bernard Duchemol Tartempion" avec donc une majuscule seulement au début des mots et un espace seulement pour séparer les noms composés...

On sait jamais , si quelqu'un a l'exact solution, c'est peut être mon jour de chance !

Merci

Bonjour

A vérifier

Merci Banzai64,

On touche au but ! la formule que tu as posté dans le fichier est parfaite à part trois petites bricoles:

  • Si on a qu'un nom ex "AALIYAH" la formule va créer un espace avant " Alliyah"
  • Si le nom contient un accent, la formule le zappe , ex "ALIZÉE" devient "Alize"
  • Si le nom contient des espaces, ça marche pas nom plus, l'espace est supprimé ex "KING KONG Charles" devient "Charles KingKong" au lieu de "Charles King Kong"

en tout as c'est déjà bien

Merci de ton aide

Sydney

Bonjour

Une suite

Excellent !

You're the BOSS

Merci

Rechercher des sujets similaires à "extraire mot majuscule"