Foxtable(狐表)用户栏目专家坐堂 → [求助]代码执行报错


  共有2166人关注过本帖树形打印复制链接

主题:[求助]代码执行报错

帅哥哟,离线,有人找我吗?
cqlpjks
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:3194 威望:0 精华:0 注册:2011/2/28 11:57:00
[求助]代码执行报错  发帖心情 Post By: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") 时报错,请指教。谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:教委考核专用统计程序 - 副本.rar

图片点击可在新窗口打开查看
[此贴子已经被作者于2017/11/24 9:42:29编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By: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
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:3194 威望:0 精华:0 注册:2011/2/28 11:57:00
  发帖心情 Post By: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

执行时出现循环:
图片点击可在新窗口打开查看此主题相关图片如下:循环.png
图片点击可在新窗口打开查看

去掉
msgbox("表名 = '责任督学' And 类别 = '" & lb & "'")
dr("得分") += dr( XX &"是或好人")  + dr( XX &"否或不好人")
后执行时就不出现了。
但不知去掉代码完善不?
[此贴子已经被作者于2017/11/24 10:31:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/24 10:38:00 [只看该作者]

当查不到的时候你要怎么计算?现在还有没问题?

 回到顶部
帅哥哟,离线,有人找我吗?
cqlpjks
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:3194 威望:0 精华:0 注册:2011/2/28 11:57:00
  发帖心情 Post By:2017/11/24 11:21:00 [只看该作者]

是的,存在这个问题。怎么处理才不出现:
图片点击可在新窗口打开查看此主题相关图片如下:循环.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2017/11/24 11:23:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/24 12:27:00 [只看该作者]

去掉红色代码 msgbox("表名 = '责任督学' And 类别 = '" & lb & "'")

 回到顶部
帅哥哟,离线,有人找我吗?
cqlpjks
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:3194 威望:0 精华:0 注册:2011/2/28 11:57:00
  发帖心情 Post By: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")
就不出现:
图片点击可在新窗口打开查看此主题相关图片如下:循环.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/24 15:48:00 [只看该作者]

 那就去掉。

 回到顶部
帅哥哟,离线,有人找我吗?
cqlpjks
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:407 积分:3194 威望:0 精华:0 注册:2011/2/28 11:57:00
  发帖心情 Post By:2017/11/24 15:49:00 [只看该作者]

谢谢!

 回到顶部