I had changed the code as suggested by you.
But, in my system, with Win XP and Excel 2003, there was no problems but when the code was run in Win 98 andExcel 2000 without "enableevents" the code went "mad". Why might that be so???
Not an important question to get answer, but still like to know the answer.
And, thank you orysiar, for your contribution also.
It still is repeatedly calling the code in 2003. In my tests, there is a slight delay after changing one to enter the next one due to this code that is constantly being called.
To illustrate, this:
Private Sub Worksheet_Change(ByVal Target As Range)
Target = UCase(Target)
Change a cell and watch what happens.
You are going to have to CTRL-BREAK out of this and click on End to stop it, but as you can see you are going to get multiple msgboxes (after you hit OK, you'll get another and another, etc.) because the code is constantly running. If it actually only ran once, you would only get one box.
Use the code I posted above instead to put it back.