以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 分组统计合计问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70818) |
||||
-- 作者:HJG_HB950207 -- 发布时间:2015/6/29 17:55:00 -- 分组统计合计问题 表A : 姓名,性别(男,女),政治面貌(党员,非党员),部门(分为A,B,C) 建表B: 类别,人数,A,B,C 通过表A,用Dim ss() As String = {"性别","政治面貌"}等代码已形成表B如下: 类别 人数 A部门 B部门 C部门 男 女 党员 非党员 ?合计 不知道如下在表加上合计栏,并计入合计数?由于此表上面是多重分组,不可按列直接累加。 谢谢! |
||||
-- 作者:大红袍 -- 发布时间:2015/6/29 18:08:00 -- 上传具体例子,说明具体的计算规则。 |
||||
-- 作者:HJG_HB950207 -- 发布时间:2015/6/29 18:33:00 -- 请教在表B中增加合计行。
|
||||
-- 作者:HJG_HB950207 -- 发布时间:2015/6/29 18:35:00 -- 在窗口1中修改代码,谢谢! |
||||
-- 作者:大红袍 -- 发布时间:2015/6/29 18:41:00 -- Dim dt As DataTable = DataTables("表A") Dim dt2 As DataTable = DataTables("表B") dt2.DataRows.Clear Dim ss() As String = {"政治面貌","性别"} For Each lb As String In ss Dim dr As DataRow= dt2.AddNew dr("类别")=" " & lb Dim sum() As Double = {0,0,0,0,0} For Each s As String In dt.GetValues(lb,lb & " is not null") dr = dt2.AddNew dr("类别")=" "&s dr("人数")=dt.Compute("count(姓名)", lb & "=\'" & s & "\'") dr("综合办")=dt.Compute("count(姓名)", lb & "=\'" & s & "\' and 部门=\'综合办\'") dr("销售部")=dt.Compute("count(姓名)", lb & "=\'" & s & "\' and 部门=\'销售部\'") dr("业务部")=dt.Compute("count(姓名)", lb & "=\'" & s & "\' and 部门=\'业务部\'") dr("财务部")=dt.Compute("count(姓名)", lb & "=\'" & s & "\' and 部门=\'财务部\'") sum(0) += dr("人数") sum(1) += dr("综合办") sum(2) += dr("销售部") sum(3) += dr("业务部") sum(4) += dr("财务部") Next dr = dt2.AddNew dr("类别") = "合计" dr("人数")=sum(0) dr("综合办")=sum(1) dr("销售部")=sum(2) dr("业务部")=sum(3) dr("财务部")=sum(4) Next |
||||
-- 作者:HJG_HB950207 -- 发布时间:2015/6/29 18:42:00 -- 谢谢!!! |