OVH Cloud OVH Cloud

mettre 1° lettre en majuscule sur une plage

5 réponses
Avatar
Pierre52
bonsoir à toutes et tous,

comme le titre de mon post le dit: je cherche à mettre la première
lettre de chaque cellule d'une plage qui peut varier en majuscule

j'ai déjà vu cela sur un site mais je n'arrive pas à le retrouver

merci de vos réponses

5 réponses

Avatar
Leonello
Bonsoir,

Par exemple,

=NOMPROPRE(A1)

--

Amicalement,
leo

"Pierre52" a écrit dans le message de news:

bonsoir à toutes et tous,

comme le titre de mon post le dit: je cherche à mettre la première lettre
de chaque cellule d'une plage qui peut varier en majuscule

j'ai déjà vu cela sur un site mais je n'arrive pas à le retrouver

merci de vos réponses


Avatar
michdenis
Bonjour Pierre52,

Adapte le nom de la feuille et la plage de cellules.


'----------------------------------
Sub test()

Dim Rg As Range, C As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
For Each C In Rg
If C.HasFormula = False Then
C.Value = Application.Proper(C)
End If
Next
End Sub
'----------------------------------


Salutations!


"Pierre52" a écrit dans le message de news:
bonsoir à toutes et tous,

comme le titre de mon post le dit: je cherche à mettre la première
lettre de chaque cellule d'une plage qui peut varier en majuscule

j'ai déjà vu cela sur un site mais je n'arrive pas à le retrouver

merci de vos réponses
Avatar
Pierre52
Bonsoir,

Par exemple,

=NOMPROPRE(A1)



merci de ta réponse rapide,

en fait c'est au cas où j'oublie de mettre une majuscule que cela me la
mette automatiquement en changeant de cellule par exemple où alors avec
un bout de code

encore merci à toi

Avatar
Ponsinet Frédéric
Bonjour Pierre52
Dans le code de ta feuille:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim c As Object, aa$
Application.EnableEvents = False
If Selection.Count = 1 Then
aa = Target.Value
If aa <> "" Then
Set c = Target
Mid(aa, 1, 1) = UCase(Mid(aa, 1, 1))
c.Value = aa
End If
End If
Application.EnableEvents = True
End Sub

"Pierre52" a écrit dans le message de
news:
bonsoir à toutes et tous,

comme le titre de mon post le dit: je cherche à mettre la première
lettre de chaque cellule d'une plage qui peut varier en majuscule

j'ai déjà vu cela sur un site mais je n'arrive pas à le retrouver

merci de vos réponses


Avatar
Pierre52
Merci beaucoup cela marche nickel

bonne journée

Bonjour Pierre52
Dans le code de ta feuille:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim c As Object, aa$
Application.EnableEvents = False
If Selection.Count = 1 Then
aa = Target.Value
If aa <> "" Then
Set c = Target
Mid(aa, 1, 1) = UCase(Mid(aa, 1, 1))
c.Value = aa
End If
End If
Application.EnableEvents = True
End Sub

"Pierre52" a écrit dans le message de
news:
bonsoir à toutes et tous,

comme le titre de mon post le dit: je cherche à mettre la première
lettre de chaque cellule d'une plage qui peut varier en majuscule

j'ai déjà vu cela sur un site mais je n'arrive pas à le retrouver

merci de vos réponses