以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 分组排序,代码如何实现 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=105349) |
||||||||||||||||||||||||||||||||||||
-- 作者:jayson -- 发布时间:2017/8/17 15:03:00 -- 分组排序,代码如何实现 分组排序,代码如何实现 下面的实例,如何在不同的产品内部,根据销量,给排序
|
||||||||||||||||||||||||||||||||||||
-- 作者:有点甜 -- 发布时间:2017/8/17 15:16:00 -- Tables("表A").Sort = "产品,销量 desc" |
||||||||||||||||||||||||||||||||||||
-- 作者:jayson -- 发布时间:2017/8/17 15:34:00 -- 不好意思,我没说清楚 我想表达的意思是,怎么在‘’排序‘’这列,实现 对应的排名(现在是我手工写的)
|
||||||||||||||||||||||||||||||||||||
-- 作者:有点甜 -- 发布时间:2017/8/17 15:53:00 -- \'获得所有班级名称,保存在集合中 Dim bjs As List(Of String) = DataTables("表A").GetValues("产品") For Each bj As String In bjs \'获得该班级的全部行,按总分降序排序 Dim drs As List(Of DataRow) = DataTables("表A").Select("[产品] = \'" & bj & "\'", "销量 DESC") For n As Integer = 0 To drs.Count - 1 \'遍历所有行 If n > 0 AndAlso drs(n)("销量") = drs(n-1)("销量") Then \'如果总分和上一行相同 drs(n)("排名") = drs(n-1)("排名") \'则排名等于上一行 Else drs(n)("排名") = n + 1 \'设置排名 End If Next Next [此贴子已经被作者于2017/8/17 15:53:40编辑过]
|
||||||||||||||||||||||||||||||||||||
-- 作者:有点甜 -- 发布时间:2017/8/17 15:53:00 -- http://www.foxtable.com/webhelp/scr/2382.htm
|