Private Sub Worksheet_Change(ByVal Target As Range)
Dim i&, p&, codeA$, codeB$, temp$, oCel As Range, oPlg As Range, Zone As Range
Set Zone = Union([A1:A500], [B1:B6], [B9:G500])
Set oPlg = Intersect(Target, Zone)
If Not oPlg Is Nothing Then
codeA = "ÀÄÂÇÉÈÊËÌÎÏÒÔÖÙÛÜŸ-&'_=+°@^\/`|[{#~*-+.;,:!"
codeB = "AAACEEEEIIIOOOUUUY "
For Each oCel In oPlg
temp = UCase(oCel.Value)
For i = 1 To Len(temp)
p = InStr(codeA, Mid(temp, i, 1))
If p Then Mid(temp, i, 1) = Mid(codeB, p, 1)
Next
Application.EnableEvents = False
oCel.Value = WorksheetFunction.Trim(temp)
Application.EnableEvents = True
Next
End If
End Sub