Hi!
You can use the following two functions:
Public Function ExtractFirstName(strNameField as String) As String
Dim lngSpacePosition As Long
Dim strName As String
strName = Trim(strNameField)
lngSpacePosition = InStr(strName, " "

If lngSpacePosition = 0 Then
ExtractFirstName = strName
Else
ExtractFirstName = Left(strName, lngSpacePosition - 1)
End If
End Function
And
Public Function ExtractMiddleName(strNameField As String) As String
Dim lngSpacePosition As Long
Dim strName As String
strName = Trim(strNameField)
lngSpacePosition = InStr(strName)
If lngSpacePosition = 0 Then
ExtractMiddleName = ""
Else
ExtractMiddleName = Mid(strName, lngSpacePosition + 1, 1)
End If
End Function
You can use these two functions in the Update to field in your update query. One caution, these functions assume that you know for sure that there is only one space between the first name and middle initial any time a middle initial exists. If there is some doubt, then you will need another function to extract the extra spaces first. Like this:
Public Function ExtractSpaces(strWrongString As String) As String
Dim strRightString As String
Dim lngSpacePosition As Long
Dim lngStartPosition As Long
strRightString = Trim(strWrongString)
lngSpacePostion = InStr(strRightString)
Do Until lngSpacePosition = 0
If Mid(strRightString, lngSpacePosition, 1) = " " Then
strRightString = Left(strRightString, lngSpacePostion) & Mid(strRightString, lngSpacePosition + 2)
lngStartPosition = lngSpacePosition + 1
Else
lngStartPosition = lngSpacePosition + 1
End IF
lngSpacePosition = InStr(lngStartPostion, strRightString, " "

Loop
ExtractSpaces = strRightString
End Function
In the first to functions you call this function like this:
strName = ExtractSpaces(strNameField)
And you will get a trimmed string with the proper amount of spaces.
hth
Jeff Bridgham