Foxtable(狐表)用户栏目专家坐堂 → 分组统计表增加列


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

主题:分组统计表增加列

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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
分组统计表增加列  发帖心情 Post By:2015/4/23 23:30:00 [显示全部帖子]

有如下分组统计代码,想统计表上增加一列“财务”,如最后一句用代码1,则不会出现“财务”列,用代码2,则不会出现小计行,如何兼得?

Dim g As New GroupTableBuilder("机型汇总", DataTables("时间"))
g.Groups.AddDef(分组)
g.Groups.AddDef("飞行日期", "月")
g.Totals.AddDef(汇总)
g.Subtotal = True
g.Build()
DataTables("机型汇总").DataCols.Add("财务",Gettype(String),32)

1. Tables("筛选_Table1").DataSource = g.BuildDataSource()
2. Tables("筛选_Table1").DataSource = DataTables("机型汇总")

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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2015/5/4 15:24:00 [显示全部帖子]

打算在交叉统计中新增“小计”,且表达式为[轻度] + [严重](按“性质”分组:分为轻度和严重事件),运行结果能实习新增“小计”列,如图

图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图15年05月04日1516_1.jpg
图片点击可在新窗口打开查看
但无法计算,提示无“轻度”列,

代码如下,请教问题在哪儿,谢谢

Dim b As New CrossTableBuilder("交叉统计",DataTables("事件汇总"))
b.HGroups.AddDef("PF")
b.VGroups.AddDef("性质")
b.HGroups.AddDef("事件名称")
b.Totals.AddDef("次数")
Tables("事件统计_Table1").DataSource = b.BuildDataSource()
Tables("事件统计_Table1").DataTable.datacols.add("小计",Gettype(Integer), 32, "[轻度] + [严重]")


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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2015/5/5 9:24:00 [显示全部帖子]

报错,说是未声明名称“轻度”。

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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2015/5/21 9:07:00 [显示全部帖子]

现在有个小问题,当“轻度”或“严重”其中一个为空时,小计列就不相加。想用IIF,为空时就作为零,然后相加。但不会写,求教,谢谢

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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2015/7/23 11:40:00 [显示全部帖子]

(交叉统计得出了临时“统计表1”,增加列:)

Tables("统计表1").DataTable.DataCols.Add("年起落", Gettype(Integer))
Tables("统计表1").DataTable.DataCols.Add("年严重概率", Gettype(Double))

(因无法直接获得“严重”列名,因此)
For Each r As Row In Tables("统计表1").rows   
Dim cs As new Dictionary(of String,String)
For Each c As Col In Tables("统计表1").Cols
       cs.Add(c.Caption,c.Name)
Next
    
r("年起落") = DataTables("人员任务统计").Compute("sum(起落)", Filter2 & "and 姓名 = '" & r("pf") & "'")
r("年严重概率") = r("cs('严重') ") /r("年起落")

报错:无法识别r("cs('严重') "),该如何引用“严重”列,谢谢


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


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2015/7/23 12:00:00 [显示全部帖子]

报错,求解,谢谢

 回到顶部