G'day Glen,
In Access VBA we use this to Capitalize the first leteer of each word entered into the field or in this case cell.
I'm not %100 sure if this will work in Excel, but it may get you started.
Function AutoCap(sInput As String) As String
Dim x As Integer
Dim sWork As String
sWork = Trim(sInput)
Mid(sWork, 1, 1) = UCase(Left(sWork, 1))
For x = 1 To Len(sWork) - 1
If Mid(sWork, x, 1) = " " Then Mid(sWork, x + 1, 1) = UCase(Mid(sWork, x + 1, 1))
Next x
AutoCap = sWork
End Function
HTH
Mark.
This code go's in the sheet module, it will turn any lower case in column B & C.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rCells As Range
Application.EnableEvents = False
If Not Intersect(Target, Columns("B:C")) Is Nothing Then
For Each rCells In Intersect(Target, Columns("B:C"))
rCells = UCase(rCells.Text)
Next
End If
Application.EnableEvents = True
End Sub
It runs automatically from the sheet module, hope this helps. JSW