中易网

请VB高手来,为什么百分比计算老出错

答案:4  悬赏:40  
解决时间 2021-03-03 02:37
我是VB新手 制了一个百分比计算器 可是输入数据相差大一点就计算出错,请高手帮我看一下,最好帮我改改语句,我设计的是上面3个框输入数字计算结果在下面三个框中显示。
Private Sub Command1_Click()
Dim a As Double
Dim b As Double
Dim c As Double
Let a=Val (Text1.Text)
Let b=Val (Text2.Text)
Let c=Val (Text3.Text)
Text4.Text=a/(a+b+c)
Text5.Text=b/(a+b+c)
Text6.Text=c/(a+b+c)
最佳答案
改为如下代码:
Private Sub Command1_Click()
Dim a As Double
Dim b As Double
Dim c As Double
Let a = Val(Text1.Text)
Let b = Val(Text2.Text)
Let c = Val(Text3.Text)
Text4.Text = (Int(10000 * a / (a + b + c)) / 100) & "%"
Text5.Text = (Int(10000 * b / (a + b + c)) / 100) & "%"
Text6.Text = (Int(10000 * c / (a + b + c)) / 100) & "%"
If Len(Text4.Text) < 5 Then Text4.Text = "0" & Text4.Text
If Len(Text5.Text) < 5 Then Text5.Text = "0" & Text5.Text
If Len(Text6.Text) < 5 Then Text6.Text = "0" & Text6.Text
End Sub
全部回答
private sub command1_click() msgbox "百分比为:" & format(text1 * 100 / text2, "00.00") & "%" end sub text1 text2中输入数字,分别为分子和分母
Private Sub Command1_Click() Dim a As Double Dim b As Double Dim c As Double Let a = Val(Text1.Text) Let b = Val(Text2.Text) Let c = Val(Text3.Text) If a + b + c <> 0 Then Text4.Text = a / (a + b + c) Text5.Text = b / (a + b + c) Text6.Text = c / (a + b + c) End If End Sub
有可能是你将数据定义为double求解容易产生溢出错误导致结果错误。改为float即可。即 Private Sub Command1_Click() Dim a As float Dim b As float Dim c As float Let a=Val (Text1.Text) Let b=Val (Text2.Text) Let c=Val (Text3.Text) Text4.Text=a/(a+b+c) Text5.Text=b/(a+b+c) Text6.Text=c/(a+b+c)
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
春天一到我脸上就会长红的小痘痘,有点痒。是
什么原因会不能自己办银行卡,包括家人存到家
成都天堂鸟学校地址在哪,我要去那里办事
有一首歌,前面是男生唱的英文,I like to yo
one more efforts还是one more effort
下寨初中在什么地方啊,我要过去处理事情
第一天上班进品质部 经理说要天天写工作总结
爱儿乐孕婴这个地址在什么地方,我要处理点事
小孩可以穿高帮靴吗,
如何申请就业补助? 我是2014年毕业的大学生
鑫磊石材洁具地址在什么地方,想过去办事
我们是异地恋,现在都没话题可聊了怎么办啊
身上的肉很紧实怎么减?
茂名市利百业贸易有限公司地址在哪,我要去那
放的近义词
推荐资讯
姓桂,求城字开头男女孩子名字,比如桂城x
电脑录歌,想买个独立声卡。希望知道的给点建
安徽鑫乐食品有限公司在什么地方啊,我要过去
老底子推拿食肆地址在哪,我要去那里办事
LOL求一套AD和AP的符文,随便问一下一共要多
求一首外国两个女孩唱的英文歌
苹果5数据线,包装盒内还有一个头子是干什么用
怎么能优化网站
长沙全天公司是验房、装修、家政等方面综合性
上海舜栗劳务派遣有限公司是骗子吗?发布的信
技嘉主板怎么进入光驱启动
我叫许聪想起一个英文名谁给支支招
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?