以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  哪位大师能帮我看看这个EXCELE报表如何实现  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48749)

--  作者:tesia255
--  发布时间:2014/4/4 10:56:00
--  哪位大师能帮我看看这个EXCELE报表如何实现
有一个表C,想要实现 统计表c 中 不同省的产生业绩的销售人数,及不同省的业绩 

业绩我能统计出来,但是不同省的销售人数不知如何统计,包括省区域/机构那里 也是想只显示出不同的省,相同的不列出来

不知道 是否可以实现 生成示例中的EXCELE报表

求大神指点~~~~
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip


--  作者:Bin
--  发布时间:2014/4/4 11:03:00
--  
先生成一个统计表,再导出.

利用分组统计

Dim g As New GroupTableBuilder("统计表1", DataTables("表C"))
g.Groups.AddDef("省")
g.Totals.AddDef("金额")
g.Build()
MainTable = Tables("统计表1")


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140404110245.png
图片点击可在新窗口打开查看


--  作者:tesia255
--  发布时间:2014/4/4 11:12:00
--  
恩 ,但是 统计不出有多少不同的销售人员 是吗?
[此贴子已经被作者于2014-4-4 11:12:58编辑过]

--  作者:Bin
--  发布时间:2014/4/4 11:22:00
--  
那就要用到SQL统计,或者编码统计了.

select distinct 省,(select count(*) from (select 省,销售 from {表C} group by 省,销售) b where a.省=b.省) as 销售人员数,(select sum(金额) from {表C} c where a.省=c.省) as 金额 from {表C} a

--  作者:tesia255
--  发布时间:2014/4/4 11:27:00
--  
谢谢老师了~~!!   
--  作者:lsy
--  发布时间:2014/4/4 11:54:00
--  

SQL比较绕花眼,想掌握有难度。

DataTables("统计").DataRows.Clear
Dim vals As List(Of String) = DataTables("表C").GetValues("省")
For Each val As String In vals
    Dim dr As DataRow = DataTables("统计").AddNew
    dr("省") = val
    dr("销售金额") = DataTables("表C").Compute("Sum(金额)","省 = \'" & val & "\'")
    dr("销售人员数") = DataTables("表C").GetValues("销售","省 = \'" & val & "\'").Count
Next


--  作者:tesia255
--  发布时间:2014/4/4 17:22:00
--  
嗯 嗯  

十分感谢老师!