以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 提取数据出错 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=148658) |
-- 作者:rgbjwjb -- 发布时间:2020/4/12 20:27:00 -- 提取数据出错 我想从表“村上报表”中提取与“基础表”中身份证号码不一致的记录,保存到表“未被提取数据”中,下面的代码出错在哪里?请指教,谢谢! Tables("未被提取数据").StopRedraw() For n As Integer = 1 To DataTables("村上报表").DataRows.Count Dim dr As Row = Tables("基础表").Current Dim dr1 As Row = Tables("村上报表").Findrow("[身份证号码] <> \'" & dr("身份证号码") & "\'") If dr IsNot Nothing Then Dim r As Row = Tables("未被提取数据").AddNew() r("组别") =dr1("组别") r("与户主关系") =dr1("与户主关系") r("姓名") =dr1("姓名") r("身份证号码") =dr1("身份证号码") r("户籍地址") =dr1("户籍地址") r("数量") =dr1("数量") End If Next Tables("未被提取数据").ResumeRedraw()
|
-- 作者:有点蓝 -- 发布时间:2020/4/12 22:48:00 -- Dim dr As Row = Tables("基础表").Current if dr isnot nothing then Tables("未被提取数据").StopRedraw() for each dr1 As dataRow in DataTables("村上报表").select("[身份证号码] <> \'" & dr("身份证号码") & "\'") Dim r As Row = Tables("未被提取数据").AddNew() r("组别") =dr1("组别") r("与户主关系") =dr1("与户主关系") r("姓名") =dr1("姓名") r("身份证号码") =dr1("身份证号码") r("户籍地址") =dr1("户籍地址") r("数量") =dr1("数量") next Tables("未被提取数据").ResumeRedraw() end if
|
-- 作者:rgbjwjb -- 发布时间:2020/4/16 21:40:00 -- 上述代码还是不能实现!我想实现的是: 假如:
“基础表”中记录数为:150条 “村上报表”中记录数为:290条 执行代码后,“未被提取数据”表中的记录数应为:140条 而上述代码执行后,“未被提取数据”表中的记录数仍为290条,请帮再做下修改,谢谢指教! |
-- 作者:有点蓝 -- 发布时间:2020/4/16 21:58:00 -- 请上传实例说明 |
-- 作者:有点蓝 -- 发布时间:2020/4/16 22:12:00 -- 如果数据都已经保存,参考: Tables("未被提取数据").StopRedraw() For Each dr1 As DataRow In DataTables("村上报表").SQLSelect("身份证号码 not in (select 身份证号码 from {基础表})") Dim r As Row = Tables("未被提取数据").AddNew() r("组别") =dr1("组别") r("与户主关系") =dr1("与户主关系") r("姓名") =dr1("姓名") r("身份证号码") =dr1("身份证号码") r("户籍地址") =dr1("户籍地址") r("数量") =dr1("数量") Next Tables("未被提取数据").ResumeRedraw() [此贴子已经被作者于2020/4/16 22:12:47编辑过]
|
-- 作者:rgbjwjb -- 发布时间:2020/4/17 23:48:00 -- 谢谢老师!上述代码能够实现我要的功能,但再次执行后能又会继续增加相同的记录,怎样修改代码防止重复新增,还请老师再次指点,谢谢!! |
-- 作者:有点蓝 -- 发布时间:2020/4/18 8:55:00 -- 执行后保存即可,自己添加保存代码 |