以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码出错 将对象引用设置到对象实例 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104212) |
-- 作者:nbsugu_z -- 发布时间:2017/7/25 15:06:00 -- 代码出错 将对象引用设置到对象实例 按上面的方法设计了一个电表抄表计算。二个数据表 表A为各电表编号 全数字,如1123,列名为:编号、价格 表B:列名为: 月份 D1123dj d1124dj d1125dj ......... 现在要每增加一个月份(增加一行)后,表B的对应的单价能从表A中获取。 因表B列名不能以数字开头,加了一个“D”,因为以后还有相应倍率的列行增加,所以单价后面加了个“ DJ" 现在写了如下代码,提示未将对象引用设置到对象实例,进入死环,请指教 If e.DataCol.name = "月" Then If e.DataCol.name Like "*dj*" Then Dim name1 As String = Left(e.DataCol.Name.Replace("dj", ""),1) \'去掉后二位dj和第一位字符得到编号 Dim drb As DataRow drb = DataTables("表A").Find("编号 = \'name1\'") \'找到表识别中编号为name1的行 e.DataRow( "d" & name1 & "dj") = drb("价格") \'自动从"表识别"取数 End if end if 以上 一个一个取数我已经会做的,现在想快速点,因为表B的电表列名去掉第一个字符和最后二个字符 就是表A的编号,有这个关系在,想直接一次性解决,减少代码,因为电表有很多。
|
-- 作者:有点甜 -- 发布时间:2017/7/25 17:33:00 -- http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=104137&authorid=0&page=0&star=2
|