Bonjour,
http://boisgontierjacques.free.fr/fichiers/fonctionsperso/Fonction_NomPropre3.xls
Function NomPropre2(nom As String)
temp = Application.Proper(nom)
tbl = Array("De ", "Du ", "Des ", "Le ", "La ", "À ", "En ", "Au ", "Bis ", "Ter ", "D'")
For i = 0 To UBound(tbl)
temp = Replace(temp, tbl(i), LCase(tbl(i)))
Next i
'---
p = InStr(temp, "'") ' position de '
If p > 0 Then
If Mid(temp, p - 2, 1) <> " " Then
Mid(temp, p + 1, 1) = LCase(Mid(temp, p + 1, 1))
End If
End If
NomPropre2 = temp
End Function
Boisgontier