vb判断输入的是数字还是字母?
4个回答
展开全部
Private Sub Form_Click()
Dim msg, UserInput
msg = "请输入一个字母或0~9之间的数字."
UserInput = InputBox(msg) ‘输入一个字母或数字
If Not IsNumeric(UserInput) Then ‘判断是否是数字
If Len(UserInput) = 1 Then ‘不是数字时,判断输入的字符串长度是否为1
Select Case Asc(UserInput) ‘判断输入字母的ASCII码值
Case 60 To 90 '在60-90之间为大写字母
msg = "你输入的是一个大写字母'"
msg = msg & Chr(Asc(UserInput)) & "'。"
Case 97 To 122 '小写字母
msg = "你输入的是一个小写字母'"
msg = msg & Chr(Asc(UserInput)) & "'。"
Case Else
msg = "你没有输入字母或数字."
End Select
EndIf
Else
SelectCase Val(UserInput) '将输入的数值型字符转换为数值
Case 1, 3, 5, 7, 9 '如果是奇数
msg = UserInput & " 是一个奇数。"
Case 0, 2, 4, 6, 8 '如果是偶数
msg = UserInput & " 是一个偶数。"
Case Else '出界
msg = "你输入的数字不在0~9范围内"
End Select
EndIf
MsgBoxmsg
End Sub
展开全部
0<ascii<255
我来补充一下代码吧,在form中加入一个Text1
Private Sub Text1_Change()
If Text1.Text = "" Then Exit Sub '如果是空字符串,就退出此过程
Dim a
a = Asc(Mid(Text1.Text, Len(Text1.Text), 1))
If a > 255 Or a < 0 Then MsgBox "刚才输入的是汉字" Else MsgBox "刚输入的是字符"
End Sub
这是靠ASCII码来判断的,你根据你的程序需要进行修改吧,这是对输入框约束输入的比较常用的方法之一,你可以去搜索一下英文字符ASCII码表.
我来补充一下代码吧,在form中加入一个Text1
Private Sub Text1_Change()
If Text1.Text = "" Then Exit Sub '如果是空字符串,就退出此过程
Dim a
a = Asc(Mid(Text1.Text, Len(Text1.Text), 1))
If a > 255 Or a < 0 Then MsgBox "刚才输入的是汉字" Else MsgBox "刚输入的是字符"
End Sub
这是靠ASCII码来判断的,你根据你的程序需要进行修改吧,这是对输入框约束输入的比较常用的方法之一,你可以去搜索一下英文字符ASCII码表.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Do x = InputBox("请输入一个字符") Loop Until Len(x) = 1 Select Case Asc(LCase(x)) Case 97 To 122 MsgBox "字母字符" Case 48 To 57 MsgBox "数字字符" Case Else MsgBox "其他字符" End Select
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-11-12
展开全部
字母
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询