Foxtable(狐表)用户栏目专家坐堂 → 求算法将表中重复行记录删掉!


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

主题:求算法将表中重复行记录删掉!

帅哥哟,离线,有人找我吗?
heying325
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:396 积分:3452 威望:0 精华:0 注册:2013/9/27 9:04:00
求算法将表中重复行记录删掉!  发帖心情 Post By:2014/8/21 13:56:00 [只看该作者]

我有一个表,里面的数据是通过excel合并来的,有很多重复的记录。。我想设置一个功能,能将这些重复的删掉,只保留唯一的记录,请教算法!

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/21 14:04:00 [只看该作者]

利用重复值筛选http://www.foxtable.com/help/topics/1478.htm
http://www.foxtable.com/help/topics/2712.htm


筛选出来结果然后删除即可

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/21 14:06:00 [只看该作者]

删除重复值,有简单的办法,例如删除第一列重复值:
 
Tables("表A").RepeatFilter("第一列", 2)
DataTables("表A").DeleteFor(Tables("表A").Filter)
Tables("表A").Filter = ""
 
参考:
http://www.foxtable.com/help/topics/2712.htm

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/21 14:07:00 [只看该作者]

或者正常的删除

Dim i As Integer
For i  = DataTables("表A").DataRows.Count-1 To 0 Step -1
    Dim dr As DataRow = DataTables("表A").DataRows(i)
    Dim dr2 As DataRow = DataTables("表A").Find("第一列='" & dr("第一列") & "' and 第二列='" & dr("第二列") & "' and _Identify <> " & dr("_Identify"))
    If dr2 IsNot Nothing Then
        dr2.Delete
    End If
Next


 回到顶部