怎怎么样在vb 中判断文本框中输入的是字符串还是数字,并把判断的结果用msgbox弹出窗口显示。

一点要把代码写全!... 一点要把代码写全! 展开
 我来答
chiefzjh
2010-05-19 · TA获得超过9086个赞
知道大有可为答主
回答量:7013
采纳率:37%
帮助的人:2248万
展开全部
Private Sub Command1_Click()
If Text1 = "" Then MsgBox "无内容": Exit Sub
If IsNumeric(Text1.Text) Then MsgBox "是数字" Else MsgBox "不是数字"
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nisoynini
2010-05-19 · TA获得超过1.3万个赞
知道大有可为答主
回答量:5185
采纳率:66%
帮助的人:1613万
展开全部
Private Function Pd(str As String)
Dim lstr%, k$, l%, b%, c%
lstr = Len(str)
For i = 1 To Len(str) Step 1
k = Mid$(str, i, 1)
For j = 65 To 90
If k = Chr$(j) Then l = l + 1
Next j
For t = 97 To 122
If k = Chr$(t) Then l = l + 1
Next t
For p = 48 To 57
If k = Chr$(p) Then b = b + 1
Next p
If k = Chr$(32) Then c = c + 1
Next i
Pd = l & "个字母" & b & "个数字" & c & "个空格"
End Function

Private Sub Form_Load()
Dim x$
x = InputBox("请输入", "提示")
MsgBox Pd(x)
End Sub
我尝试做一下,不知道这方法可行不?

这个更有效率

Private Function Pd(str As String)
Dim lstr%, k$, l%, b%, c%
lstr = Len(str)
For i = 1 To Len(str) Step 1
k = Mid$(str, i, 1)
If Chr$(k) = 32 Then c = c + 1
If Chr$(k) > 64 and Chr$(j) < 90 Then l = l + 1 : goto 10
If Chr$(k) > 96 and Chr$(j) < 123 Then l = l + 1 : goto 10
If Chr$(k) > 47 and Chr$(j) < 58 Then b = b + 1 : goto 10
10 Next
Pd = l & "个字母" & b & "个数字" & c & "个空格"
End Function

Private Sub Form_Load()
Dim x$
x = InputBox("请输入", "提示")
MsgBox Pd(x)
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuwei1231
2010-05-19 · TA获得超过443个赞
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:194万
展开全部
有ASCII代码的
比如判断数字的
48-57是数字
65-90是大写的英文字母
97-122小写的英文字母
你判断键盘的键值,就可以知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2010-05-19 · TA获得超过1807个赞
知道大有可为答主
回答量:1971
采纳率:0%
帮助的人:2323万
展开全部
if isnumeric(text1.text) then
msgbox "文本框中的是数字"
else
msgbox "文本框中的是字符串"
end if
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式