是不是字母可以判断字母的ASCII码值的范围。
大写字母从65---90
小写字母从97---122
汉字的ascii码小于0
select case keyascii
case 13,27,8
case <0
'汉字
case else
select case chr(keyascii)
case 0 to 9'数字
case a to z ,A TO Z
case "*","+",....
case else
'....
end select
end select
For i = 1 To Len(Text1.Text)
MsgBox Asc(Mid(Text1.Text, i, 1))
Next
'asc值在0-255为标准ascii字符你查查msdn可以找到英文字母的ascii值,当返回的值是5位数,则肯定不是英文字符,但有可能是日韩或其他非英语的语言字符,不知道能判断不是英文字符是不是就够了