Foxtable(狐表)用户栏目专家坐堂 → 排序并选择


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

主题:排序并选择

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


加好友 发短信
等级:二尾狐 帖子:536 积分:4227 威望:0 精华:0 注册:2019/1/13 10:12:00
排序并选择  发帖心情 Post By:2019/8/5 21:24:00 [只看该作者]

老师,请看实例。目的:在表A里分别按关联方Y和N
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:排序并选择实例.table

从大到小排序,在统计表里只选择金额最大的前两名,请指教。

 回到顶部
帅哥,在线噢!
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4752 积分:34568 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2019/8/5 21:52:00 [只看该作者]

DataTables("取前两名").DataRows.Clear
For Each s As String In DataTables("表A").GetValues("关联方")
    For i As Integer = 0 To 1
        Dim fdr As DataRow = DataTables("表A").Find("关联方='" & s & "'","金额 desc",i)
        Dim dr As DataRow = DataTables("取前两名").AddNew
        dr("编号") = fdr("编号")
        dr("单位") = fdr("单位")
        dr("关联方") = fdr("关联方")
        dr("金额") = fdr("金额")
    Next
Next

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110568 积分:562730 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/5 22:00:00 [只看该作者]

这种只能使用代码处理:

For Each s As String In DataTables("表A").GetValues("关联方")
    For Each dr As DataRow In DataTables("表A").Select("关联方='" & s & "'","金额 desc").take(2)
        Dim dr2 As DataRow = DataTables("取前两名").AddNew
        dr2("关联方") = s
        dr2("金额") = dr("金额")
    Next
Next

 回到顶部