以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 条件删除 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=25681) |
-- 作者:wilson -- 发布时间:2012/11/14 13:01:00 -- 条件删除 表A与表B 都有 单号 编号 名称 的列 表A里存在的行,如果表B都存在,那么删除表B等于表A的行. 表A里存在的行,如果表B有一行不存在,那么返回并提示不能删除.
For Each r2 As DataRow In DataTables("表a").DataRows For Each dr2 As DataRow In DataTables("表b").Select("单号 = \'" & r2("单号") & "\' And 编号 = \'" & r2("编号") & "\' And 名称 = \'" & r2("名称") & "\'")
调试N次都不行,求助 谢谢! |
-- 作者:小猪鑫鑫 -- 发布时间:2012/11/14 13:50:00 -- 楼主:我测试了一下,好像是说Return 有问题,可改为exit for,这样运行正常; 另:我设的这三列都是字段列,你看看是不是,如有数字列的话,合成变量还需要改一下 |
-- 作者:czy -- 发布时间:2012/11/14 14:16:00 -- 全部存在才执行删除,如果有一行不存在就不执行删除,好怪的要求。 可以考虑增加辅助列来解决。 |
-- 作者:wilson -- 发布时间:2012/11/14 14:26:00 -- 非常感谢! |
-- 作者:wilson -- 发布时间:2012/11/14 14:27:00 -- 非常感谢! |
-- 作者:czy -- 发布时间:2012/11/14 14:32:00 -- 这样试试
DataTables("表A").DataCols.Add("标记", Gettype(Boolean)) |
-- 作者:wilson -- 发布时间:2012/11/14 15:39:00 -- 非常感谢您对我的帮助! |
-- 作者:wilson -- 发布时间:2012/11/14 16:03:00 -- 问题已经解决! 谢谢!
|