以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]分数阶中统计缺考人数  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=8687)

--  作者:方丈
--  发布时间:2010/11/26 19:15:00
--  [求助]分数阶中统计缺考人数
在成绩管理中,成绩0分与缺考(空值)是不一样的,怎样统计缺考(空值)人数到分数阶中?
--  作者:czy
--  发布时间:2010/11/26 21:54:00
--  

以示例文件统计演示文件为例,在成绩分布表增加一列缺考

DataColChanged事件代码

 

Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("学生成绩")
If e.DataCol.Name = "科目" And dr.IsNull("科目") = False Then
    dr("最高分") = dt.Compute("Max("  & dr("科目") & ")")
    dr("最低分") = dt.Compute("Min("  & dr("科目") & ")")
    dr("平均分") = dt.Compute("Avg("  & dr("科目") & ")")
    dr("缺考") = dt.Compute("Count(姓名)", dr("科目") & " Is Null")
    dr("分布_60分以下") = dt.Compute("Count(姓名)", dr("科目") & " < 60")
    dr("分布_60分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 60 And " & dr("科目") & " < 70" )
    dr("分布_70分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 70 And " & dr("科目") & " < 80" )
    dr("分布_80分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 80 And " & dr("科目") & " < 90" )
    dr("分布_90分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 90 And " & dr("科目") & " < 100" )
    dr("分布_100分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 100 And " & dr("科目") & " < 110" )
    dr("分布_110分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 110 And " & dr("科目") & " < 120" )
    dr("分布_120分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 120 And " & dr("科目") & " < 130" )
    dr("分布_130分以上") = dt.Compute("Count(姓名)", dr("科目") & " >= 130" )
End If


--  作者:方丈
--  发布时间:2010/11/26 22:45:00
--  
谢谢