Foxtable(狐表)用户栏目专家坐堂 → [求助]交叉统计表设置


  共有1894人关注过本帖树形打印复制链接

主题:[求助]交叉统计表设置

帅哥哟,离线,有人找我吗?
zcgmxf
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
[求助]交叉统计表设置  发帖心情 Post By:2016/12/2 14:35:00 [只看该作者]

老师,如何使交叉统计表单元格文字居中排列?谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/2 15:10:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2018/8/9 10:15:00 [只看该作者]

老师,交叉统计垂直汇总时,如何实现只汇总  金额 列  不汇总数量列?谢谢!

Dim b As New GroupTableBuilder("统计表1",DataTables("订单"))
g.HGroups.AddDef("药品名称")
b
.Groups.AddDef("日期","{0}月") '添加日期列用于分组,并用"月"代替原名称
b
.Totals.AddDef("数量") '添加数量列用于统计
b
.Totals.AddDef("金额") '添加金额列用于统计
b
.Subtotal = True '生成汇总模式
B
.SubtotalLevel = 0 '只生成总计行
b
.Build '生成统计表
MainTable = Tables(
"统计表1") '打开生成的统计表

[此贴子已经被作者于2018/8/9 10:17:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/9 10:18:00 [只看该作者]

生成统计表1以后,再做汇总统计

 

http://www.foxtable.com/webhelp/scr/00144.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2018/8/9 10:40:00 [只看该作者]

老师,就是下面的那个问题处理不好。有时候可能有三个月,有时候可能只统计1个月的,
g1 = New Subtotalgroup
g1.Aggregate = AggregateEnum.Sum
g1.GroupOn = "*"
g1.TotalOn = "金额_1,合计_金额"   ‘  就是 金额_1 ,’
g1.Caption = "总计"
t.SubtotalGroups.Add(g1)
t.Subtotal()

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/9 11:08:00 [只看该作者]

循环每一列,设置,如

 

 

Dim cs As String = ""
For Each c As Col In Tables("统计表1").cols
    If c.name.contains("金额") Then
        cs &= c.name & ","
    End If
Next
msgbox(cs.trim(","))


 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2018/8/9 15:18:00 [只看该作者]

老师,学艺不精,不知道如何写入代码,请指教,谢谢!
下面的代码执行可以正常显示,
Dim cs As String = ""
For Each c As Col In Tables("统计表1").cols
    If c.name.contains("金额") Then
        cs &= c.name & ","
    End If
Next
Dim pas() As String = cs.Split(",")
For i As Integer = 0 To pas.Length - 3
    msgbox("金额_" & 1 + i)
Next

    g.TotalOn = "金额_ & i +1 ,合计_金额"    这个就提示没有 金额_ & i +1 列

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/9 16:18:00 [只看该作者]

Dim cs As String = ""
For Each c As Col In Tables("统计表1").cols
    If c.name.contains("金额") Then
        cs &= c.name & ","
    End If
Next
msgbox(cs.trim(","))

g.TotalOn = cs.trim(",")


 回到顶部