Faccio una precisazione: la 2a parte del codice è sbagliata e inutile: basta mettere KeyAscii = 0 insieme a MsgBox (come faceva vedere Oregon). L'errore sta nel fatto che il Select Case è inutile visto che bisogna discriminare solo un evento booleano: o il tasto appartiene al range oppure no..Cmq se proprio si vuole il select case:

codice:
Select Case KeyAscii
        Case 48 To 57 
        Exit sub
        Case Else
        KeyAscii = 0
    End Select
Ciao a tutti..