Private Sub Worksheet_Change(ByVal Target As Range) 'mettre nom en majuscule de job75
Static s: Dim n%, p
If Target.Row = 1 Or Intersect(Target, Union(Columns(2), Columns(10))) Is Nothing Or Target.Count > 1 Or IsArray(s) Then Exit Sub
s = Split(UCase(Application.Trim(Target)))
n = UBound(s)
If n = 1 Then s(1) = Application.Proper(s(1))
If n > 1 Then
p = Int(Abs(Val(InputBox("Entrez le nombre de mots du nom :", , 1))))
p = IIf(p = 0, 1, IIf(p > n, n + 1, p))
For p = p To n
s(p) = Application.Proper(s(p))
Next
End If
Target = Join(s): s = Empty
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'mettre Madame ou Monsieur de Robert
If Not Intersect([a2:a65000,i2:i650000], Target) Is Nothing Then
Cancel = True
Select Case LCase(Target.Value)
Case ""
Target = "Madame"
Case "madame"
Target.Value = "Monsieur"
Case "monsieur"
Target.Value = ""
End Select
End If
End Sub