以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  统计表的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158910)

--  作者:81538475
--  发布时间:2020/12/7 11:19:00
--  统计表的问题

这种表图片点击可在新窗口打开查看  如何正确变成这个样子呢。图片点击可在新窗口打开查看
目前代码是这样,发现年份不同,月份相同的 会被统计到所有年份去。

Dim g2 As New CrossTableBuilder("质量分2", DataTables("质量分1"))
g2.HGroups.AddDef("主审")
g2.VGroups.AddDef("年")
g2.VGroups.AddDef("月")
g2.Decimals = 2
g2.Totals.AddDef("质量分", AggregateEnum.Average, "质量分")
g2.Build()
[此贴子已经被作者于2020/12/7 11:23:21编辑过]

--  作者:有点蓝
--  发布时间:2020/12/7 11:32:00
--  
添加一个辅组的日期列,把年月转换为日期,比如:1999-01-01,然后通过日期进行分组:

添加垂直分组到VGroups中的语法如下:

VGroups.AddDef(Name)
VGroups.AddDef(Name, Pattern)
VGroups.AddDef(Name, DateGroup)
VGroups.AddDef(Name, DateGroup, Pattern)


DateGroupEnum枚举的可选值:

 

None :     不分组
Year:      按年分组 
Quarter:   按季度分组
Month:     按月分组
Week:      按周分组
Day:       按天分组,月中的某一天。
Hour:      按小时分组
Minute:    按分钟分组 Second:    按秒分组


--  作者:81538475
--  发布时间:2020/12/7 14:19:00
--  
能用添加临时列的方式添加吗?后面的表达式麻烦帮忙给一下把
DataTables("质量分2").DataCols.Add("日期1", Gettype(date),"年" & “-” & "月" & “-01” )


--  作者:有点蓝
--  发布时间:2020/12/7 14:46:00
--  
日期不支持使用表达式

只是使用代码遍历所有行处理,或者到datacolchanged事件处理