Rss & SiteMap

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

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

标题:交叉统计问题

1楼
jhxb8821 发表于:2023/1/31 17:36:00
请教老师,如何将表A数据,生成“统计表”样式,请教老师代码如何修改?
Dim b As New CrossTableBuilder("统计表1", DataTables("表A"))
b.HGroups.AddDef("姓名") '添加客户列用于水平分组
b.VGroups.AddDef("型号") '添加产品列用于垂直分组
b.Totals.AddDef("数量") '添加数量列用于统计
b.OrderByTotal = True '同种类型的统计数据排列在一起
b.Build '生成统计表
Maintable = Tables("统计表1") '打开生成的统计表
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.foxdb

[此贴子已经被作者于2023/1/31 17:36:45编辑过]
2楼
有点蓝 发表于:2023/1/31 21:49:00
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.zip

3楼
jhxb8821 发表于:2023/2/1 10:18:00
谢谢老师,因型号内容多少不确定,因此想采用临时表进行汇总,统计型号根据内容多少自动延伸,请老师看看一下代码:
Dim dtb As New DataTableBuilder("临时表1")
dtb.AddDef("姓名", GetType(String), 16)
dtb.AddDef("型号", GetType(String), 16)
dtb.AddDef("数量", GetType(Integer))
'dtb.AddDef("金额", GetType(Double))
dtb.Build()
'For Each nm() As String In DataTables("表A").GetValues("姓名|型号")
 '   Dim dr As DataRow = DataTables("临时表1").AddNew()

Dim r As Row
For Each s As String In DataTables("表A").GetValues("姓名")
    r = Tables("临时表1").AddNew
    r("姓名") = s
    For Each dr As DataRow In DataTables("表A").Select("姓名='" & s & "'")
        If dr.IsNull("型号") = False Then
            Dim xh As String = dr("型号").SubString(1).trim("0")
            r("型号" & xh & "_型号") = dr("型号")
            r("型号" & xh & "_数量") = dr("数量")
        End If 
    Next 
Next
[此贴子已经被作者于2023/2/1 10:19:50编辑过]
4楼
有点蓝 发表于:2023/2/1 10:24:00
Dim dtb As New DataTableBuilder("临时表1")
dtb.AddDef("姓名", GetType(String), 16)
For Each nm As String In DataTables("表A").GetValues("型号")
Dim xh As String = nm.SubString(1).trim("0")
dtb.AddDef("型号" & xh & "_型号", GetType(String), 16)
dtb.AddDef("型号" & xh & "_数量", GetType(String), 16)
next
dtb.Build()
5楼
jhxb8821 发表于:2023/2/1 10:49:00
.NET Framework 版本:4.0.30319.17929
Foxtable 版本:2022.8.18.1
错误所在事件:窗口,窗口1,Button5,Click
详细错误信息:
名为“型号1_型号”的列已属于此 DataTable。

6楼
有点蓝 发表于:2023/2/1 10:58:00
表格数据是怎么样的?
7楼
jhxb8821 发表于:2023/2/1 11:19:00
请老师看看自动生成
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目62.foxdb

临时表的代码

希望临时表生成的效果,要与2楼统计表那样
[此贴子已经被作者于2023/2/1 11:28:41编辑过]
8楼
有点蓝 发表于:2023/2/1 11:30:00
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目62.zip

9楼
jhxb8821 发表于:2023/2/1 12:15:00
完全正确,非常感谢蓝老师
10楼
jhxb8821 发表于:2023/2/1 15:13:00

老师,仔细测试还是发现一些问题,我换一个实例来说,比如横向标题为检查次数(检查日期和检查结果),检查次数为检查最多的单位检查的次数,比如5次,分别为检查次数1、检查次数2、检查次数3、检查次数4、检查次数5

纵向单位列表,要求按照升序或降序,分别从检查次数1开始依次填充,老师这个代码怎么重新进行调试?同时汇总表希望将相同的系统放在一起
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:交叉统计项目1.foxdb

共40 条记录, 每页显示 10 条, 页签: [1] [2][3][4]

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

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 7 queries.