Macro majuscules après un point

Bonjour à tous,

j'ai un fichier avec de nombreuses lignes écrites intégralement en majuscules.

Je souhaite que toutes les phrases commencent par une majuscule.

C'est à dire que la phrase commence par une majuscule et que dès qu'il y a un point, la phrase qui suit commence par une majuscule (et le reste en minuscules)

La fonction NOMPROPRE n'est pas adéquate car elle met une majuscule à chaque mot...

Pouvez-vous m'éclairer svp ?

Salut

Peux-tu joindre un fichier stp ?

Voila un premier pas

dis-moi si ça te convient pour l'instant ?

avec le fichier

16classeur6.xlsx (8.36 Ko)

Bonjour MaZ.

Bonjour Red.

Avec une fonction personnalisée.

Sacré Benoit59 , toujours une longueur d'avance sur moi

Sacré Benoit59 , toujours une longueur d'avance sur moi

Rien ne t'empêche de trouver une solution plus simpliste

c'est cool on en apprend tous les jours

Salut à tous,

tout d'abord, bonne année 2018 !

Désolé du retard de ma réponse, mais divers problèmes m'ont empêché de me connecter au forum...

Merci pour vos réponses, la solution de Benoit59 est parfaite !

Encore merci et bonne journée

Malheureusement j'ai un problème...

Lorsque je mets le code donné dans visual basic editor et que je mets la formule "MajPhrase(NomDeLaCelulle), j'ai #NOM? qui apparait.

Du coup, je reprends le fichier créé par Benoit59, colle mes descriptifs qui sont en majuscules et seulement les 3 premières lignes fonctionnent (voir PJ)

Je ne comprends pas :/

Pouvez-vous m'aider svp ?

Le problème vient des espaces après le dernier "."

Tu peux corriger le problème en reprenant ce code :

Option Explicit

Function MajPhrase(phrase$)
Dim temp
Dim i%, t$
temp = Split(phrase, ".")
On Error Resume Next
For i = LBound(temp) To UBound(temp)
    t = Trim(temp(i))
    If i = 0 Then
        MajPhrase = UCase(Left(t, 1)) & LCase(Right(temp(i), Len(t) - 1))
    Else
        MajPhrase = MajPhrase & ". " & UCase(Left(t, 1)) & LCase(Right(t, Len(t) - 1))
    End If
Next i
End Function

Ok j'ai compris la chose, merci Benoit

Ou pas... Je pensais avoir compris mais non car j'ai toujours plein de #VALEUR!

Voici mes deux fichiers, un qui me donne des #VALEUR! et d'autres des #NOM!

J'ai beau cherché je ne comprends pas

Deux erreurs de ta part.

Dans le fichier avec NOM!, il faut placer le code dans un module séparé et pas dans la feuille.

Dans le fichier VALEUR!, tu n'as pas repris le dernier code fourni avec le

On Error Resume Next

Ok ça fonctionne dans le fichier où il y avait #NOM! en ayant placé le code dans un module

Merci beaucoup ! Cette fois c'est la bonne

Rechercher des sujets similaires à "macro majuscules point"