'-----------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
'-----------------------------------------------------------------
Const WS_RANGE As String = "A1"
Dim i As Long
Dim tmp As String
On Error GoTo ws_exit:
Application.EnableEvents = False
If Not Intersect(Target, Me.Range(WS_RANGE)) Is Nothing Then
For i = 1 To Len(Target.Value)
Select Case Mid(Target.Value, i, 1)
Case "A": tmp = tmp & "1"
Case "B": tmp = tmp & "2"
Case "C": tmp = tmp & "3"
'etc
End Select
Next i
Target.Value = tmp
End If
ws_exit:
Application.EnableEvents = True
End Sub
'This is worksheet event code, which means that it needs to be
'placed in the appropriate worksheet code module, not a standard
'code module. To do this, right-click on the sheet tab, select
'the View Code option from the menu, and paste the code in.
--
HTH
Bob Phillips
(remove xxx from email address if mailing direct)