Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共18 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:交?统计问题

1楼
lgz518 发表于:2025/1/6 14:02:00
如何让交叉统计统计,增加“小计,超差数,状态”?
Dim b As New CrossTableBuilder("统计表1", DataTables("表C"))
b.HGroups.AddDef("姓名") '
b.HGroups.AddDef("项目") '
b.HGroups.AddDef("计划运动量") '
b.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年") '
b.VGroups.AddDef("日期", DateGroupEnum.Month, "{0}月") '
b.Totals.AddDef("数量") '
b.Totals.AddDef("日运动量") '
b.Build '生成统计表
Maintable = Tables("统计表1") '打开生成的统计表
如图

图片点击可在新窗口打开查看此主题相关图片如下:交计算.jpg
图片点击可在新窗口打开查看

2楼
有点蓝 发表于:2025/1/6 14:18:00
先生成统计表,再使用DataTables("统计表1").DataCols.Add这种方式添加表达式列,类似:http://www.foxtable.com/webhelp/topics/3227.htm
3楼
lgz518 发表于:2025/1/6 14:53:00
先生成统计表

Dim b As New CrossTableBuilder("统计表1", DataTables("表C"))
b.HGroups.AddDef("姓名") '
b.HGroups.AddDef("项目") '
b.HGroups.AddDef("计划运动量") '
b.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年") '
b.VGroups.AddDef("日期", DateGroupEnum.Month, "{0}月") '
b.Totals.AddDef("数量") '
b.Totals.AddDef("日运动量") '
b.Build '生成统计表
'Maintable = Tables("统计表1") '打开生成的统计表

'Dim nms() As String = {"语文", "英语", "数学", "物理", "化学"}

2.绿色部分是如何加上,对红代码,没太理解,请帮处理?
Dim nms() As String = {"日期", "数量"}
For Each nm As String In nms '对生成的统计表增加表达式列,计算及格率和优秀率
    DataTables("统计表1").DataCols.Add(nm & "小计", GetType(Double), nm & "_数量")
    Tables("统计表1").Cols(nm & "超差数").Move(Tables("统计表1").Cols(nm & "超差数").Index + 1)
    DataTables("统计表1").DataCols.Add(nm & "状态", GetType(Double), nm & "状态")
    Tables("统计表1").Cols(nm & "状态").Move(Tables("统计表1").Cols(nm & "_状态").Index + 1)

Next
MainTable = Tables("统计表1")
4楼
有点蓝 发表于:2025/1/6 15:40:00
……
b.Build '生成统计表
dim s as string = ""
for each c as col in Tables("统计表1").cols
if c.name like "数量_*" then
s = s & "+" & c.name
next
s = s.trim("+")
DataTables("统计表1").DataCols.Add("数量小计", GetType(Double), s)
DataTables("统计表1").DataCols.Add("超差数", GetType(Double), "数量小计 - 计划运动量")
5楼
lgz518 发表于:2025/1/7 10:40:00

执行后,第一行没计算,如何解决?如下图


图片点击可在新窗口打开查看此主题相关图片如下:交计算-1.jpg
图片点击可在新窗口打开查看

6楼
有点蓝 发表于:2025/1/7 10:42:00
加上isnull:http://www.foxtable.com/webhelp/topics/0602.htm
7楼
lgz518 发表于:2025/1/7 11:52:00
Dim b As New CrossTableBuilder("统计表1", DataTables("表C"))
b.HGroups.AddDef("姓名") '
b.HGroups.AddDef("项目") '
b.HGroups.AddDef("计划运动量") '
b.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年") '
b.VGroups.AddDef("日期", DateGroupEnum.Month, "{0}月") '
b.VGroups.AddDef("日期", DateGroupEnum.Day, "{0}日")
b.Totals.AddDef("数量") '
b.Totals.AddDef("日运动量") '

b.Build '生成统计表
dim s as string = ""
for each c as col in Tables("统计表1").cols
if c.name like "数量_*" then
s = s & "+" & c.name
next
s = s.trim("+")
DataTables("统计表1").DataCols.Add("数量小计", GetType(Double), s)
DataTables("统计表1").DataCols.Add("超差数", GetType(Double), "数量小计 - 计划运动量")
加上红代码,取不到值,如何处理?
8楼
有点蓝 发表于:2025/1/7 12:02:00
什么地方没有值?截图说明
9楼
lgz518 发表于:2025/1/7 13:43:00
问题一:没值

此主题相关图片如下:交没值.jpg
按此在新窗口浏览图片


问题二:改代码,让统计结果在窗口上的表显示,下面代码报错,提示没"统计表1",如何解决?
Dim b As New CrossTableBuilder("统计表1", DataTables("表C"))
b.HGroups.AddDef("姓名") '
b.HGroups.AddDef("项目") '
b.HGroups.AddDef("计划运动量") '
b.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年") '
b.VGroups.AddDef("日期", DateGroupEnum.Month, "{0}月") '
b.VGroups.AddDef("日期", DateGroupEnum.Day, "{0}日")
b.Totals.AddDef("数量") '
b.Totals.AddDef("日运动量") '

b.Build '生成统计表
dim s as string = ""
for each c as col in Tables("统计表1").cols
if c.name like "数量_*" then
s = s & "+" & c.name
next
s = s.trim("+")
DataTables("统计表1").DataCols.Add("数量小计", GetType(Double), s)
DataTables("统计表1").DataCols.Add("超差数", GetType(Double), "数量小计 - 计划运动量")
'MainTable = Tables("统计表1") 
Tables("窗口2_Table1").DataSource = b.BuildDataSource() 

10楼
有点蓝 发表于:2025/1/7 13:46:00
问题1、看6楼
2、请上传实例测试
共18 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.