vb在文本框里输入负数,然后赋给变量

这样做运行,在文本框里输入负数总是出现溢出错误,请问为什么,怎样能解决?是double型的变量用val函数的话我觉得不够准确还有其它办法吗... 这样做运行,在文本框里输入负数总是出现溢出错误,请问为什么,怎样能解决?
是 double 型的变量 用val函数的话我觉得不够准确 还有其它办法吗
展开
 我来答
百度网友f47cbdeca
2009-04-24 · TA获得超过112个赞
知道答主
回答量:36
采纳率:0%
帮助的人:70.9万
展开全部
你最好把你的相关代码贴出来,不过根据你所说的,在文本框赋值时加VAL转换函数应该可以解决,如:
n=val(text1.text)
这样的话,如果文框输入的是字母,也不会出错,只是赋完值后n为0
另外给你一个检查的方法:就是用字符串,你把结果转为字符串并输出,看看结果到底是什么,会不会是因为运算结果是否超出了定义类型的范围。
爱皇室的lulu
2009-04-24 · TA获得超过1347个赞
知道小有建树答主
回答量:1338
采纳率:50%
帮助的人:270万
展开全部
变量类型不正确
你声明的变量可能不支持负数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Null_bd
2009-04-24 · TA获得超过503个赞
知道大有可为答主
回答量:583
采纳率:0%
帮助的人:0
展开全部
可能是定义的变量类型不符合,变量数据长度过小,或者你在文本框事件中加入数据输入检查,而对输入的字符范围未考虑周全

======================================
那就用CDbl(strInput)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友42ed5ea5c
2009-04-24 · TA获得超过201个赞
知道答主
回答量:350
采纳率:100%
帮助的人:218万
展开全部
这是个接收例子! 把接收负数的那个变量先定义为字符型,然后用val转换为数字型!
Private Sub Command1_Click()
Dim s As String
s = InputBox("输入")
MsgBox Val(s + 5)
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尼欧赵
2009-04-24 · TA获得超过823个赞
知道大有可为答主
回答量:1597
采纳率:0%
帮助的人:1212万
展开全部
Dim a As Double
a = Text1.Text

在文本框输入 -400000 没有出现溢出错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ljl88900
2009-04-29 · TA获得超过2661个赞
知道大有可为答主
回答量:2197
采纳率:100%
帮助的人:2628万
展开全部
其实用val是把字符型数值转换为数值型数值,准确度不用怀疑,关健是接收它的变量数值定义问题。如果定义小了,则就会出现溢出错误。
所以,在不知道你在文本框里输入负数有多大的情况下,不妨作如下处理:
dim a
a=val(text1.text)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式