Function Nom(chaine)
Application.Volatile
chaine = Replace(Replace(Replace(chaine, "Mme", ""), "M. ", ""), "Mlle ", "")
If UCase(chaine) = chaine Then
temp = chaine
Else
If InStr(chaine, " ") > 0 Then
a = Split(chaine, " ")
i = UBound(a)
Do While UCase(a(i)) = a(i) And i > LBound(a): i = i - 1: Loop
For k = i + 1 To UBound(a): temp = temp & a(k) & " ": Next
Else
temp = chaine
End If
End If
Nom = Trim(temp)
End Function
Function PreNom(chaine)
Application.Volatile
chaine = Replace(Replace(Replace(chaine, "Mme", ""), "M. ", ""), "Mlle ", "")
If UCase(chaine) = chaine Then
temp = ""
Else
If InStr(chaine, " ") = 0 Then
temp = ""
Else
a = Split(chaine, " ")
i = UBound(a)
Do While UCase(a(i)) = a(i) And i > LBound(a): i = i - 1: Loop
For k = LBound(a) To i: temp = temp & a(k) & " ": Next
End If
End If
PreNom = Trim(temp)
End Function
Function civilité(chaine)
civilité = ""
civil = Array("M.", "Mme", "Mle")
For i = 0 To UBound(civil)
If InStr(chaine, civil(i)) > 0 Then civilité = civil(i)
Next i
End Function