Foxtable(狐表)用户栏目专家坐堂 → 删除行


  共有2440人关注过本帖树形打印复制链接

主题:删除行

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110746 积分:563656 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/10 21:06:00 [显示全部帖子]

既然没有找到相同编号的行,也就是不存在这行,又何需删除?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110746 积分:563656 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/10 21:36:00 [显示全部帖子]

用个集合记录找到的行,然后删除剩下的

Dim Book As New XLS.Book("c:\test\订单.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("订单").StopRedraw()
Dim nms() As String = {"编号","产品","客户","雇员","单价","折扣","数量","日期"}
Dim lst As new List(of String)
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim bh As String = sheet(n,0).Text
    Dim dr As DataRow = DataTables("订单").Find("编号 = '" & bh & "'")
    If dr Is Nothing Then '如果不存在同编号的订单
        dr =  DataTables("订单").AddNew()
    Else
        lst.Add(dr("编号"))
    End If
    For m As Integer = 0 To nms.Length - 1
        dr(nms(m)) = Sheet(n,m).Value
    Next
Next
DataTables("订单").DeleteFor("编号 not in ('" & String.Join("','",lst.ToArray) & "')")
Tables("订单").ResumeRedraw()

 回到顶部