以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]如果,跨表引用出现报错就不会赋值了,怎么修改? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=116080) |
-- 作者:jjjeyes -- 发布时间:2018/3/19 17:12:00 -- [求助]如果,跨表引用出现报错就不会赋值了,怎么修改? If e.DataCol.Name = "学号" Then If e.NewValue Is Nothing Then e.DataRow("姓名") = Nothing e.DataRow("班级") = Nothing e.DataRow("大一成绩") = Nothing e.DataRow("大二成绩") = Nothing e.DataRow("大三成绩") = Nothing e.DataRow("大四成绩") = Nothing Else Dim dr As DataRow Dim d1 As DataRow Dim d2 As DataRow Dim d3 As DataRow Dim d4 As DataRow dr = DataTables("测试成绩详细").Find("[学号] = \'" & e.NewValue & "\'") d1 = DataTables("测试成绩详细").Find("[学号] = \'" & e.NewValue & "\' And [年级编号] = \'41\'") d2 = DataTables("测试成绩详细").Find("[学号] = \'" & e.NewValue & "\' And [年级编号] = \'42\'") d3 = DataTables("测试成绩详细").Find("[学号] = \'" & e.NewValue & "\' And [年级编号] = \'43\'") d4 = DataTables("测试成绩详细").Find("[学号] = \'" & e.NewValue & "\' And [年级编号] = \'44\'") If dr IsNot Nothing Then e.DataRow("姓名") = dr("姓名") e.DataRow("班级") = dr("班级") e.DataRow("大一成绩") = d1("总分") e.DataRow("大二成绩") = d2("总分") e.DataRow("大三成绩") = d3("总分") e.DataRow("大四成绩") = d4("总分") End If End If End If 以上为代码。 但是,会出现一个问题,如果遇到在“测试成绩详细”表中找不到对应的d1,或者d2,或者d3,或者d4。就会报错,并且不给后面的“大一成绩”,“大二成绩”,“大三成绩”,“大四成绩”赋值。 请问,我在哪里加这个判断语句?怎么修改?
|
-- 作者:有点甜 -- 发布时间:2018/3/19 17:15:00 -- 改成,参考红色代码修改
If dr IsNot Nothing Then |