以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码修改 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=50884) |
-- 作者:aygp -- 发布时间:2014/5/15 8:39:00 -- 代码修改 以下是lsy老师的一段代码,能正常运行。可以把“学籍管理”表中的相关列数据和“课程设置”表中的‘课程’列数据复制到“成绩管理”表中的对应列中。现在还需要把“课程设置”表中的‘课程性质’列的数据也复制到“成绩管理”表的 ‘课程性质’列中。请问以下代码应该如何修改? DataTables("成绩管理").DataRows.Clear For Each r As Row In Tables("学籍管理").Rows Dim fdr As DataRow = DataTables("课程设置").Find("主考院校 = \'" & r("主考院校") & "\' And 专业 = \'" & r("专业") & "\'") If fdr IsNot Nothing Then Dim vals As List(Of String) = DataTables("课程设置").GetValues("课程","课程 Is Not Null And 主考院校 = \'" & r("主考院校") & "\' And 专业 = \'" & r("专业") & "\'") For Each val As String In vals Dim nr As Row = Tables("成绩管理").AddNew For Each c As Col In Tables("学籍管理").Cols If Tables("成绩管理").Cols.Contains(c.Name) Then nr(c.Name) = r(c.Name) End If Next nr("课程") = val Next End If Next |
-- 作者:Bin -- 发布时间:2014/5/15 8:48:00 -- 同理的,改下表名和列名即可, 楼主能只是盲目的复制代码,要去看以及理解. 否则需求稍加变动又不会了. 教会了1+2 2+1 又不懂了,这样怎么行. For Each r As Row In Tables("课程设置").Rows Dim fdr As DataRow = DataTables("成绩管理").Find("课程 = \'" & r("课程") & "\' and 主考院校 = \'" & r("主考院校") & "\' And 专业 = \'" & r("专业") & "\'") If fdr IsNot Nothing Then fdr("课程性质")=r("课程性质") End If Next |
-- 作者:aygp -- 发布时间:2014/5/15 10:30:00 -- 谢谢Bin老师,我正在努力学习代码。以上代码执行完一个学生姓名的‘课程性质’列后,第二个学生姓名及以后 学生姓名的‘课程性质’列都不能复制数据,请老师修改一下。 |
-- 作者:aygp -- 发布时间:2014/5/15 10:32:00 -- 见截图: |
-- 作者:有点甜 -- 发布时间:2014/5/15 10:57:00 -- DataTables("成绩管理").DataRows.Clear For Each r As Row In Tables("学籍管理").Rows Dim fdr As DataRow = DataTables("课程设置").Find("主考院校 = \'" & r("主考院校") & "\' And 专业 = \'" & r("专业") & "\'") If fdr IsNot Nothing Then Dim vals As List(Of String()) = DataTables("课程设置").GetValues("课程|课程性质","课程 Is Not Null And 主考院校 = \'" & r("主考院校") & "\' And 专业 = \'" & r("专业") & "\'") For Each val As String() In vals Dim nr As Row = Tables("成绩管理").AddNew For Each c As Col In Tables("学籍管理").Cols If Tables("成绩管理").Cols.Contains(c.Name) Then nr(c.Name) = r(c.Name) End If Next nr("课程") = val(0) nr("课程性质") = val(1) Next End If Next [此贴子已经被作者于2014-5-15 10:57:27编辑过]
|
-- 作者:aygp -- 发布时间:2014/5/15 11:19:00 -- 测试通过。谢谢甜老师! |