ok!
I understand that it will give you that erro if you highlight multiple cells. this will solve that.
Private Sub Worksheet_Change(ByVal Target As Range)
for each c in target
c.Value = Application.WorksheetFunction.Proper
(c.Value)
next c
End Sub
but in regards to your other code, you may try to make calcualtions that are not compatible such as multiplying text and a number, etc.
show your code that gives error.