Microsoft 365 Code Excel pour mettre la première lettre en majuscule

Yonissart

XLDnaute Nouveau
Bonsoir
Je cherche un code Excel pour mettre la première lettre de chaque mot en majuscule. j'en avais trouvé un super, mais il y a des mots qui doivent rester entièrement en majuscule, et ça ne suit pas, ça met meme tout en minuscule
Existe t-il un code Excel pour réussir ceci ?
Merci beaucoup
Cordialement
 
Solution
Bonsoir,

A tester ce code que j'ai sous le coude, provient d'un ancien fichier "le mettre dans la feuille même"

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Not Intersect(Target, [A1:Z100]) Is Nothing Then
        Dim cell As Range
        For Each cell In Target
            cell.Value = CapitaliserPremiereLettre(cell.Value)
        Next cell
    End If
    Application.EnableEvents = True
End Sub

Function CapitaliserPremiereLettre(ByVal texte As String) As String
    Dim mots() As String
    Dim mot As Variant
    Dim i As Integer

    mots = Split(texte, " ")

    For i = LBound(mots) To UBound(mots)
        If mots(i) <> "" Then
            ' Vérifier si le premier caractère est...

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @job75 :),

1733165041417.png
 

Yonissart

XLDnaute Nouveau
Bonjour
Merci pour vos réponses
La raison qui fait que je souhaite la première lettre de chaque mot en majuscule est qu'il s'agit soit de prénom et/ou de noms, soit de noms de rue...
Pour un autre fichier, je testerai un autre code, mis ici, je ne sais encore lequel, car ce fichier m'arrivera à partir de janvier
Merci
Cordialement
 

merinos-BernardEtang

XLDnaute Accro
Bonjour a tous,


Pour le plaisir, j'ai un peu joué avec l'I. A. ...

VB:
=LAMBDA(text;
    TEXTJOIN(" "; TRUE;
        MAP(TEXTSPLIT(text; " ");
            LAMBDA(word;
                UPPER(LEFT(word; 1)) & RIGHT(word; LEN(word) - 1)
            )
        )
    )
)

il a juste oublié le paramettre "TRUE"

les phrasesresultats
Le peTiTs cHATS de 4ansLe PeTiTs CHATS De 4ans
Le peTiTs cHATS de 4ansLe PeTiTs CHATS De 4ans
ce' est etoCe' Est Eto
c'eC'e
c'est étonNANT mAIS ceLA 4Ans.C'est ÉtonNANT MAIS CeLA 4Ans.
je ne sAIS pASJe Ne SAIS PAS


le code en francais:

Code:
=LAMBDA(texte,
    JOINDRE.TEXTE(" ", VRAI
        MAP(FRACTIONNER.TEXTE(texte, " "),
            LAMBDA(mot,
                MAJUSCULE(GAUCHE(mot, 1)) & DROITE(mot, STXT(mot, 2, 9999))
            )
        )
    )
)
 

Pièces jointes

  • LAMBDA upper text.xlsx
    11.4 KB · Affichages: 1

Discussions similaires

  • Question
XL pour MAC mise en forme
Réponses
2
Affichages
487
Réponses
9
Affichages
679

Statistiques des forums

Discussions
315 085
Messages
2 116 074
Membres
112 650
dernier inscrit
badi44