以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]代码执行报错 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=109993) |
||||
-- 作者:cqlpjks -- 发布时间:2017/11/24 9:42:00 -- [求助]代码执行报错 For Each XX As String In XXs dr( XX &"是或好人") = DataTables("答案2").Compute("Count(单位)", "[单位] = \'" & dw & "\'And 类别 = \'" & lb & "\'And " & XX & "= \'A\'") dr( XX &"是或好%") = dr( XX &"是或好人")/dr("调查人数")*100 dr( XX &"否或不好人") = DataTables("答案2").Compute("Count(单位)", "[单位] = \'" & dw & "\'And 类别 = \'" & lb & "\'And " & XX & "= \'B\'") dr( XX &"否或不好%") = dr( XX &"否或不好人")/dr("调查人数")*100 dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") Dim Nms() As String = {XX &"是或好%",XX &"否或不好%","得分"} For Each nm As String In nms If dr.IsNull(Nm) = False Then dr(Nm) = Format(dr(Nm),"0.00") \'确定小数位数 End If Next Next dr("得分") = Format(dr("得分")/dr("调查人数")/7, "0.00") 代码执行到 dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") 时报错,请指教。谢谢!
[此贴子已经被作者于2017/11/24 9:42:29编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/24 10:06:00 -- If rdr IsNot Nothing Then dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") Else msgbox("表名 = \'责任督学\' And 类别 = \'" & lb & "\'") dr("得分") += dr( XX &"是或好人") + dr( XX &"否或不好人") End If |
||||
-- 作者:cqlpjks -- 发布时间:2017/11/24 10:30:00 -- If rdr IsNot Nothing Then dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") Else msgbox("表名 = \'责任督学\' And 类别 = \'" & lb & "\'") dr("得分") += dr( XX &"是或好人") + dr( XX &"否或不好人") End If 去掉 msgbox("表名 = \'责任督学\' And 类别 = \'" & lb & "\'") dr("得分") += dr( XX &"是或好人") + dr( XX &"否或不好人") 后执行时就不出现了。 但不知去掉代码完善不?
[此贴子已经被作者于2017/11/24 10:31:24编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/24 10:38:00 -- 当查不到的时候你要怎么计算?现在还有没问题? |
||||
-- 作者:cqlpjks -- 发布时间:2017/11/24 11:21:00 -- 是的,存在这个问题。怎么处理才不出现: 此主题相关图片如下:循环.png [此贴子已经被作者于2017/11/24 11:23:04编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/24 12:27:00 -- 去掉红色代码 msgbox("表名 = \'责任督学\' And 类别 = \'" & lb & "\'") |
||||
-- 作者:cqlpjks -- 发布时间:2017/11/24 15:36:00 -- 去掉下面代码中的红色代码: If rdr IsNot Nothing Then dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") Else msgbox("表名 = \'责任督学\' And 类别 = \'" & lb & "\'") dr("得分") += dr( XX &"是或好人") + dr( XX &"否或不好人") End If dr("得分") += dr( XX &"是或好人") * rdr("A") + dr( XX &"否或不好人") * rdr("B") |
||||
-- 作者:有点甜 -- 发布时间:2017/11/24 15:48:00 -- 那就去掉。 |
||||
-- 作者:cqlpjks -- 发布时间:2017/11/24 15:49:00 -- 谢谢! |