以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  像这样一个表如何计算每个老师的监考时间  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=130428)

--  作者:dzy1232016
--  发布时间:2019/1/21 21:59:00
--  像这样一个表如何计算每个老师的监考时间
计算出每个老师的监考时间的代码如何写,没有一点头绪
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工作簿1.xls


--  作者:有点蓝
--  发布时间:2019/1/21 22:32:00
--  
遍历所有行和列,逐个把老师提出来。最终需要什么效果?
--  作者:dzy1232016
--  发布时间:2019/1/21 22:39:00
--  
教师      时间
董周洋  400
李华宁  380


--  作者:dzy1232016
--  发布时间:2019/1/21 22:41:00
--  
能生成临时表最好,如何遍历后生成两列,不知道怎么写代码
--  作者:有点蓝
--  发布时间:2019/1/21 22:41:00
--  
400,380是什么值,从哪来,怎么计算出来的?
[此贴子已经被作者于2019/1/21 22:41:30编辑过]

--  作者:dzy1232016
--  发布时间:2019/1/21 22:43:00
--  
从第一条记录取时间,这个会那天版主说了
--  作者:有点蓝
--  发布时间:2019/1/21 22:59:00
--  
Dim dt As Table = DataTables("统计表")
Dim dr As DataRow
For Each r As Row In Tables("导入表").Rows
    For Each c As Col In Tables("导入表").Cols
        Dim name As String = r(c.Name)
        dr = dt.Find("教师=\'" & name & "\'")
        If dr Is Nothing Then
            dr = dt.AddNew()
            dr("教师") = name
        End If
        dr("时间") = 时间的计算
    Next
Next

--  作者:dzy1232016
--  发布时间:2019/1/22 9:45:00
--  
基本实现,感谢版主那么晚还回复我
Dim dtb As New DataTableBuilder("统计表")
dtb.AddDef("教师", Gettype(String),20)
dtb.AddDef("时间", Gettype(Integer))
dtb.Build()
Dim dt As DataTable = DataTables("统计表")
Dim dr As DataRow
For Each r As Row In Tables("jkb").Rows
    For Each c As Col In Tables("jkb").Cols
        Dim name As String = r(c.Name)
        dr = dt.Find("教师=\'" & name & "\'")
        If dr Is Nothing Then
            dr = dt.AddNew()
            dr("教师") = name
        End If
        \'dr("时间") = 时间的计算
    Next
Next
DataTables("统计表").DeleteFor("教师 is null")