以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]不同表数据遍历填充  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=74156)

--  作者:方丈
--  发布时间:2015/9/4 18:17:00
--  [求助]不同表数据遍历填充

请教 大红袍 老师
    怎样根据《人事安排表》中姓名为A1-A18的工作安排生成《人事安排明细表》(序号与姓名已填好)?

 

如:在《人事安排表》中:A1任701-704(班号为①②③④)政治,且为 702副班任


   则在《人事安排明细表》中 姓名 A1 班号 ①②③④  科目 政治  班任 702副班任

 

 谢谢!

 

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:人事安排转换.table


--  作者:y2287958
--  发布时间:2015/9/4 22:11:00
--  
For Each dr As DataRow In DataTables("人事安排明细表").DataRows
    Dim xm,bz,bzrs,kms As String
    xm = dr("姓名")
    bz = ""
    bzrs = "正班任|副班任"
    kms = "政治|语文|数学|英语"
    Dim lst1,lst2 As new List(of String)
    For Each fdr As DataRow In DataTables("人事安排表").DataRows
        For Each bzr As String In bzrs.Split("|")
            If fdr(bzr) = xm
                bz += fdr("班级") & bzr
            End If
        Next
        For Each km As String In kms.Split("|")
            If fdr(km) = xm
                Lst1.Add(fdr("班号"))
                If lst2.Contains(km) = False
                    lst2.Add(km)
                End If
            End If
        Next
    Next
    dr("班任") = bz
    dr("班号") = String.Join("",lst1.ToArray)
    dr("科目") = String.Join("",lst2.ToArray)
Next

--  作者:方丈
--  发布时间:2015/9/4 23:25:00
--  
谢谢!