For a complete discussion of this topic see Posts #15 through #24 in this thread. An improved version of the macro is below. Install this macro. Select continuous rows in the same column containing the target text. The selection must be a single column. Run the macro.
CODE
Sub CapFirstWord()
'by Ed Weber 09/19/07
' Select continuous rows in the same column which contain the target text
Dim ActSh As Worksheet
Set ActSh = ActiveSheet
Dim temp As String
Dim strText As String
Dim oCell
temp = ""
For Each oCell In Selection.Cells
If IsEmpty(oCell) = False Then
strText = Trim(oCell.Value)
temp = UCase(Mid(strText, 1, 1))
strText = temp & Mid(strText, 2, Len(strText) - 1)
oCell.Value = ""
oCell.Value = strText
temp = ""
End If
Next oCell
End Sub