以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]被除数不能为"0"的判断 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1906) |
-- 作者:狐哥 -- 发布时间:2009/2/23 17:05:00 -- [求助]被除数不能为"0"的判断 Dim dr As DataRow = e.DataRow Select Case e.DataCol.Name Case "币制","USD","HKD","RMB" If dr.IsNull("币制") Then dr("利润") = Nothing Else Dim dr1,dr2,dr3 As DataRow with datatables("汇率表") dr1 = .Find("源币制 = \'USD\'and 折算币制 = \'" & dr("币制") & "\'") dr2 = .Find("源币制 = \'HKD\'and 折算币制 = \'" & dr("币制") & "\'") dr3 = .Find("源币制 = \'RMB\'and 折算币制 = \'" & dr("币制") & "\'") dim s As String = dr("USD") & dr1("折算符") & dr1("兑换率") dim ss as string = dr("HKD") & dr2("折算符") & dr2("兑换率") dim sss as string = dr("RMB") & dr3("折算符") & dr3("兑换率") dr("利润") = eval(s)+eval(ss)+eval(sss) End With END IF End Select 请看上面蓝色公式 \'如果dr("USD") = 0 , dr1("折算符") = / (除号) 则此公式为: 0 / XX数.第一次打开系统时,出现一个错误提示.就是 0/ 6.8 (因为0不能作被除数) 求: dr(\'usd\') = 0时, EVAL(S)为0,其余类推.dr(\'HKD\') = 0时, EVAL(SS)为0 ,dr(\'RMB\') = 0时, EVAL(SSS)为0 [此贴子已经被作者于2009-2-23 17:05:35编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2009/2/23 17:09:00 -- 0/xx可以的 xx/0是不行的 这个只有加入判断了,如果是0,采用另外的计算或赋值方式。 |
-- 作者:狐哥 -- 发布时间:2009/2/23 17:41:00 -- 以下是引用狐狸爸爸在2009-2-23 17:09:00的发言:
0/xx可以的 只要这个可以就行了,呵呵! |