Standard Name Formatting Routine
Posted
by Konstantin Komissarchik
on February 7th, 2004
A common mistake will format a person whose middle initial is not known as:
John . Doe instead of John Doe
However making it right requires some effort and there is no need to repeat it for every time. That's why I created the following functions:
public Function FormatName(firstname as string, _
lastname as string, _
optional mi as string, _
optional title as string, _
optional Suffix as string) as string
If len(Trim$(title)) > 0 then
FormatName = StrConv(title, vbProperCase)
If Right$(FormatName, 1) <> "." then FormatName = _
FormatName & "."
FormatName = FormatName & " "
End If
If len(Trim$(firstname)) > 0 then
FormatName = FormatName & StrConv(firstname, _
vbProperCase) & " "
End If
If len(Trim$(mi)) > 0 then
FormatName = FormatName & StrConv(mi, vbProperCase)
If Right$(FormatName, 1) <> "." then FormatName = _
FormatName & "."
FormatName = FormatName & " "
End If
If len(Trim$(lastname)) > 0 then
FormatName = FormatName & StrConv(lastname, vbProperCase) _
& " "
End If
If len(Trim$(Suffix)) > 0 then
FormatName = Trim$(FormatName) & ", " & StrConv(Suffix, _
vbProperCase)
End If
FormatName = Trim$(FormatName)
End Function
This function is similar to the one above, except that it puts the lastname first.
public Function FormatNameReverse(firstname as string, _
lastname as string, _
optional mi as string) as string
FormatNameReverse = StrConv(lastname, vbProperCase)
If len(Trim$(firstname)) > 0 Or len(Trim$(mi)) > 0 then
FormatNameReverse = FormatNameReverse & ","
End If
If len(Trim$(firstname)) > 0 then
FormatNameReverse = FormatNameReverse & " " & _
Trim$(StrConv(firstname, vbProperCase))
End If
If len(Trim$(mi)) > 0 then
FormatNameReverse = FormatNameReverse & " " & _
Trim$(StrConv(Left$(mi, 1), _
vbProperCase)) & "."
End If
FormatNameReverse = Trim$(FormatNameReverse)
End Function

Comments
Program
Posted by Legacy on 12/11/2003 12:00amOriginally posted by: Grea
Reply