以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]您好,想统计某列全部元素出现的次数,并将统计结果存在另一个表中  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=184778)

--  作者:小梧桐
--  发布时间:2023/1/1 10:39:00
--  [求助]您好,想统计某列全部元素出现的次数,并将统计结果存在另一个表中
您好,我想将Table(“HAZOP”)中的COL(“后果主题ID”)中的元素进行统计,并将统计结果存到 Table(“后果统计”)中。

出现过的列元素填在Table(“后果统计”)的COL("后果主题"),列元素出现次数对应填在Table(“后果统计”)的COL("出现次数")中。



--  作者:有点蓝
--  发布时间:2023/1/2 19:59:00
--  
请上传实例说明
--  作者:小梧桐
--  发布时间:2023/1/3 8:37:00
--  [求助]您好,想统计某列全部元素出现的次数,并将统计结果存在另一个表中
您好,实例表如下
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2023/1/3 8:50:00
--  
做个分组统计:http://www.foxtable.com/webhelp/topics/0677.htm
然后把统计结果填充到需要的表:http://www.foxtable.com/webhelp/topics/1533.htm

--  作者:小梧桐
--  发布时间:2023/1/3 11:11:00
--  
您好,想对Tables("HAZOP")进行分组统计,这段代码应该怎么改呢?

Dim b As New GroupTableBuilder("后果ID", DataTables("HAZOP"))
b.Groups.AddDef("后果主题ID") \'根据后果主题ID分组

b.Totals.AddDef("后果主题ID", AggregateEnum.Count, "出现次数")
b.Build \'生成统计表
MainTable = Tables("后果ID") \'打开生成的统计表

--  作者:有点蓝
--  发布时间:2023/1/3 11:20:00
--  
上面代码有什么问题?
--  作者:小梧桐
--  发布时间:2023/1/3 11:22:00
--  
上面代码统计的是databale(“HAZOP”),我想统计筛选后的Table(“HAZOP”)
--  作者:有点蓝
--  发布时间:2023/1/3 11:25:00
--  
……
b.filter = Table(“HAZOP”).filter
b.Build \'生成统计表
……

详解GroupTableBuilder

下面有些内容比较抽象,在接触具体的示例前,会比较难以理解,没有关系,先大概了解一下即可。 

GroupTableBuilder包括以下属性:

Caption:           字符型,指定新生成统计表的标题。
Groups:            集合,用于添加分组列
Totals:            集合,用于添加统计列。
VerticalTotal:     逻辑型,设为True,垂直方向自动增加汇总行。参考:垂直汇总
GrandProportion:   逻辑型,是否生成总占比。 参考:分组统计之占比分析
GroupProportion:   逻辑型,是否生成分组占比。参考:分组统计之占比分析
SamePeriodGrowth:  逻辑型,是否生成同比增长率。参考: 分组统计之增长率分析
CircleGrowth:      逻辑型,是否生成环比增长率。参考: 分组统计之增长率分析
Subtotal:          逻辑型,设为True,将对分组统计结果进行二次统计,生成汇总模式。 参考:自动生成汇总模式
SubtotalLevel:     整数型,根据多少个分组生成汇总模式。 参考:自动生成汇总模式
Decimals:          整数型,用于设置统计结果要保留的小数位数,默认为4位。
Filter:            字符型,如果只是对SourceDataTable中的部分数据进行统计,可用Filter属性设置条件。
请参考表达式的运算符和函数 和 条件表达式