if Inlist(nKeyCode, 4, 5, 9, 24, 19) return endif LOCAL ; key_stroke, ; key_rec, ; NewKey key_stroke = UPPER(CHR(nKeyCode)) key_rec = RECNO() SEEK key_stroke DO WHILE .T. NewKey = INKEY(.4, "H") IF NewKey <> 0 .AND. BETWEEN(nKeyCode, 48, 122) key_stroke = key_stroke + UPPER(CHR(NewKey)) SEEK key_stroke IF EOF() EXIT ELSE key_rec = RECNO() ENDIF ELSE EXIT ENDIF ENDDO IF EOF() if between(key_rec, 1, reccount()) .or. key_rec < 0 GOTO key_rec endif ENDIF