Foxtable(狐表)用户栏目专家坐堂 → 计算同一行数据的最高分、最低分和平均值,计算名次


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

主题:计算同一行数据的最高分、最低分和平均值,计算名次

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/21 11:00:00 [显示全部帖子]

 做个按钮

 

Dim dt As DataTable = DataTables("表A")
For Each dr As DataRow In dt.Select("")
    Dim ary() As Double = {dr("A裁判"), dr("B裁判"), dr("C裁判"), dr("D裁判")}
    array.sort(ary)
    dr("最低分") = ary(0)
    dr("最高分") = ary(ary.length-1)
    dr("平均分") = (ary(1) + ary(2)) / 2
Next
Dim drs As List(Of DataRow) = dt.Select("", "平均分 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


 回到顶部