以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]删除重复行解疑(已解决) (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=110557) |
-- 作者:yyzlxc -- 发布时间:2017/12/5 13:43:00 -- [求助]删除重复行解疑(已解决) 删除表中的重复值,用第一段代码可以实现要求,但是给出错误的提示,而用第二段代码则顺利通过。问题时是为什么运行第一段代码会出错呢?请各位老师指教,谢谢!! 运行第一段代码出错 For Each dr As DataRow In DataTables("清点明细").DataRows If dr.IsNull("编号") = False Then Dim dr2 As DataRow = DataTables("清点明细").Find("清点日期 = \'" & rq & "\' And 编号 = \'" & dr("编号") & "\' and _Identify > " & dr("_Identify")) If dr2 IsNot Nothing Then dr2.Delete End If End If Next 运行第二段代码顺利通过 Dim i As Integer For i = DataTables("清点明细").DataRows.Count-1 To 0 Step -1 Dim dr As DataRow = DataTables("清点明细").DataRows(i) Dim dr2 As DataRow = DataTables("清点明细").Find("清点日期 = \'" & rq & "\' And 编号 = \'" & dr("编号") & "\' and _Identify > " & dr("_Identify")) If dr2 IsNot Nothing Then dr2.Delete End If Next [此贴子已经被作者于2017/12/5 13:57:46编辑过]
|
-- 作者:notebook -- 发布时间:2017/12/5 13:53:00 -- 批量删除要倒着删,所以第一种就会出错,第二种就没问题。 |
-- 作者:yyzlxc -- 发布时间:2017/12/5 13:57:00 -- 谢谢notebook老师的指教,再次感谢!! |
-- 作者:有点色 -- 发布时间:2017/12/5 14:08:00 -- 筛选重复,删除重复,参考
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=107764&skin=0
|