Fonction Excel : première lettre en majuscule
Fermé
chouchoumeta
Messages postés
1
Date d'inscription
jeudi 14 janvier 2010
Statut
Membre
Dernière intervention
14 janvier 2010
-
14 janv. 2010 à 19:16
Abdel - 23 janv. 2010 à 23:01
Abdel - 23 janv. 2010 à 23:01
A voir également:
- Excel première lettre en majuscule
- Formule excel première lettre majuscule reste minuscule - Meilleures réponses
- Excel majuscule première lettre - Meilleures réponses
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Excel mois en lettre ✓ - Forum Excel
- Mise en forme conditionnelle excel - Guide
- Si et excel - Guide
3 réponses
Salut,
Voici une macro a copier coller dans un module de ton fichier pour avoir une nouvelle fonction de disponible dans Excel.
Ensuite tu peux utiliser la formule de la manière suivante : =PhraseMaj(A2;"sur sous en de du des et au aux")
ou =PhraseMaj(A3;"a, an, and, for, from, of, or, the, to")
Voici la fonction à copier coller :
-------------------------------
Option Explicit
'Abdel Elg
'23/01/2010
Function PhraseMaj(Phrase As String, Optional Except As String) As String
Dim s As String
Dim tabMots() As String
Dim i As Integer
Except = " " & Trim(Except) & " "
tabMots = Split(Phrase, " ")
For i = 0 To UBound(tabMots)
s = Trim(tabMots(i))
If InStr(1, Except, s, vbTextCompare) = True Then 'en minuscules
PhraseMaj = PhraseMaj & " " & LCase(s)
Else 'Nom Propre
PhraseMaj = PhraseMaj & " " & UCase(Left(s, 1)) & LCase(Mid(s, 2))
End If
Next i
PhraseMaj = Trim(PhraseMaj)
End Function
-------------------------------
Voici une macro a copier coller dans un module de ton fichier pour avoir une nouvelle fonction de disponible dans Excel.
Ensuite tu peux utiliser la formule de la manière suivante : =PhraseMaj(A2;"sur sous en de du des et au aux")
ou =PhraseMaj(A3;"a, an, and, for, from, of, or, the, to")
Voici la fonction à copier coller :
-------------------------------
Option Explicit
'Abdel Elg
'23/01/2010
Function PhraseMaj(Phrase As String, Optional Except As String) As String
Dim s As String
Dim tabMots() As String
Dim i As Integer
Except = " " & Trim(Except) & " "
tabMots = Split(Phrase, " ")
For i = 0 To UBound(tabMots)
s = Trim(tabMots(i))
If InStr(1, Except, s, vbTextCompare) = True Then 'en minuscules
PhraseMaj = PhraseMaj & " " & LCase(s)
Else 'Nom Propre
PhraseMaj = PhraseMaj & " " & UCase(Left(s, 1)) & LCase(Mid(s, 2))
End If
Next i
PhraseMaj = Trim(PhraseMaj)
End Function
-------------------------------