以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 如何筛选出统计表1的前10行? (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=121943) |
-- 作者:Zhao2006 -- 发布时间:2018/7/16 11:26:00 -- 如何筛选出统计表1的前10行? 已完成了的部分代码 Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'添加客户列用于分组 b.Totals.AddDef("金额") \'添加数量列用于统计 b.Totals.AddDef("数量") \'添加数量列用于统计 \'b.VerticalTotal = True \'自动垂直汇总 b.Build \'生成统计表 Tables("统计表1").Sort = "金额 DESC" 。 。 。 。 (如何筛选出金额较大的前10行?) MainTable = Tables("统计表1") \'打开生成的统计表
[此贴子已经被作者于2018/7/16 11:29:21编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/7/16 12:00:00 -- Dim n As Integer = 10 Dim t As Table = Tables("表A") Dim idxs As String = "\'\'," n = iif(t.Rows.count>n, n, t.Rows.count) For i As Integer = 0 To n-1 idxs &= "\'" & t.rows(i)("第一列") & "\'," Next t.filter = "第一列 in (" & idxs.trim(",") & ")" |
-- 作者:Zhao2006 -- 发布时间:2018/7/16 16:20:00 -- 甜老师好,命令窗口试运行显示:无法在 System.Double 和 System.String 上执行“=”操作。 还需转换个什么类型的吧。
|
-- 作者:y2287958 -- 发布时间:2018/7/16 16:49:00 -- 只能如此了 Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'添加客户列用于分组 b.Totals.AddDef("金额") \'添加数量列用于统计 b.Totals.AddDef("数量") \'添加数量列用于统计 \'b.VerticalTotal = True \'自动垂直汇总 b.Build \'生成统计表 Tables("统计表1").Sort = "金额 DESC" Tables("统计表1").Select(0,0,9,0) Tables("统计表1").HideUnSelectedRows MainTable = Tables("统计表1") \'打开生成的统计表 |
-- 作者:有点甜 -- 发布时间:2018/7/16 16:49:00 -- 1、贴出你所写代码
2、你的产品列不是字符串? |
-- 作者:Zhao2006 -- 发布时间:2018/7/16 17:07:00 -- Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'添加客户列用于分组 b.Totals.AddDef("金额") \'添加数量列用于统计 b.Totals.AddDef("数量") \'添加数量列用于统计 \'b.VerticalTotal = True \'自动垂直汇总 b.Build \'生成统计表 Tables("统计表1").Sort = "金额 DESC" Dim n As Integer = 10 Dim t As Table = Tables("统计表1") Dim idxs As String = "\'\'," n = iif(t.Rows.count>n, n, t.Rows.count) For i As Integer = 0 To n-1 idxs &= "\'" & t.rows(i)("金额") & "\'," Next t.filter = "金额 in (" & idxs.trim(",") & ")" MainTable = Tables("统计表1") \'打开生成的统计表
|
-- 作者:Zhao2006 -- 发布时间:2018/7/16 17:11:00 -- 嗯,这位同学的代码能够实现,真神。 |
-- 作者:Zhao2006 -- 发布时间:2018/7/16 17:14:00 -- 谢谢y2287958,
|
-- 作者:有点甜 -- 发布时间:2018/7/16 18:03:00 -- 把金额列,改成产品列
Dim t As Table = Tables("统计表1")
Dim idxs As String = "\'\',"
n = iif(t.Rows.count>n, n, t.Rows.count)
For i As Integer = 0 To n-1
idxs &= "\'" & t.rows(i)("产品") & "\',"
Next
t.filter = "产品 in (" & idxs.trim(",") & ")"
MainTable = Tables("统计表1") \'打开生成的统计表
|
-- 作者:Zhao2006 -- 发布时间:2018/7/16 18:32:00 -- 嗯!嗯!!这个正确出表了,谢谢甜老师。 |