[VBA ] VBA运算请益

楼主: sweetdance (此ID停止使用)   2013-08-24 22:50:38
我的程式码如下
Private Sub CommandButton1_Click()
For j = 1 To 16 Step 5
Me.Controls("TextBox" & j + 4).Value = Val(Me.Controls("TextBox" & j).Value)
* Val(Me.Controls("TextBox" & j + 1).Value) * Val(Me.Controls("TextBox" & j +
2).Value) / Val(Me.Controls("TextBox" & j + 3).Value)
Next
End Sub
目前是没办法运算的~会出现 溢位
a=TextBox缩写
我的想法是 a5=a1*a2*a3/a4
a10=a6*a7*a8/a9
a1,a2,a3,a4是我输入的值,a5是计算后的值
依此类推
但是如果把最后的除法拿掉,就可以算了
我在想是不是定义
Me.Controls("TextBox" & j + 4).Value 为 long
可是写 Dim Me.Controls("TextBox" & j + 4).Value As Long 又会出现 "必须是识别项"
请高手指导一下,感恩
谢谢
※ 编辑: sweetdance 来自: 1.164.34.170 (08/24 23:22)
※ 编辑: sweetdance 来自: 1.164.34.170 (08/24 23:27)
作者: LPH66 (-6.2598534e+18f)   2013-08-24 23:29:00
你的 a4,a9,a14,a19 是不是有 0 ?
楼主: sweetdance (此ID停止使用)   2013-08-25 00:08:00
对,因为我要运算前我让所有都归零所以是不是要写if a4,9,14,19=0, 答案就为0?因为a4,9,14,19-0时,其它也都是0,所以该怎写比较好呢?努力中,感觉快破解了!!!
作者: MOONRAKER (㊣牛鹤鳗毛人)   2013-08-25 08:51:00
除以零当然会OVERFLOW。
楼主: sweetdance (此ID停止使用)   2013-08-25 16:18:00
已自行测试出来了^^..谢谢楼上大大提醒

Links booklink

Contact Us: admin [ a t ] ucptt.com