以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]循环删除表里面的行的时候,总是删不干净。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=153277)

--  作者:81538475
--  发布时间:2020/8/5 20:22:00
--  [求助]循环删除表里面的行的时候,总是删不干净。
For Each r As Row In Tables("财务工具_Table1").Rows
    
    Dim drsw As DataRow = DataTables("商务信息登记表").SQLFind("公司名称=\'"& r("来源") &"\'")
    If drsw IsNot Nothing Then
        If drsw("归属地")<> "总部" Then
         
            r.Delete
        End If
    End If
Next
总是每次删一两个。需要怎么改一下呢

--  作者:y2287958
--  发布时间:2020/8/6 7:54:00
--  
用SQLDeleteFor
--  作者:有点蓝
--  发布时间:2020/8/6 9:19:00
--  
行删除要倒序处理

For i as integer = Tables("财务工具_Table1").Rows - 1 to 0 step -1
    dim r as row = Tables("财务工具_Table1").Rows(i)
    Dim drsw As DataRow = DataTables("商务信息登记表").SQLFind("公司名称=\'"& r("来源") &"\'")
    If drsw IsNot Nothing Then
        If drsw("归属地")<> "总部" Then
         
            r.Delete
        End If
    End If
Next

--  作者:81538475
--  发布时间:2020/8/6 10:35:00
--  
多谢