以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教有关“销售成绩统计表”代码  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=170289)

--  作者:xusuyang
--  发布时间:2021/7/20 18:53:00
--  请教有关“销售成绩统计表”代码

老师:您好!

1、我将代码:For Each dr As DataRow In DataTables("学生成绩统计表").DataRows

    dr("语数英_分数")=dr("语文_分数")+dr("数学_分数")+dr("英语_分数")

    dr("物化生_分数")=dr("物理_分数")+dr("化学_分数")+dr("生物_分数")

    dr("语数英物化生_分数")=dr("语文_分数")+dr("物理_分数")+dr("化学_分数")+dr("生物_分数")

Next

Dim bjs As List(Of String) = DataTables("学生成绩统计表").GetValues("班级","班级 is not null")

For Each bj As String In bjs

    \'获得该班级的全部行,按总分降序排序

    Dim drs As List(Of DataRow) = DataTables("学生成绩统计表").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

带入代码编辑器.DataColChangd.表事件(图一)

(图一)


2、当我修改语文分数移动光标后出现(图二)“运行错误”提示

                                  (图二)

 请教老师一下!

谢谢!!!

我的版本是2021.4.5






--  作者:有点蓝
--  发布时间:2021/7/20 20:41:00
--  
这种代码请设计窗口,放到窗口按钮执行。不能放到表事件

每个事件都有自己的使用场合,不是随便找个地方放代码就能执行的,不然何必搞那么多事件