Office中国论坛/Access中国论坛

标题: (代码)依据指定字段,将该字段重复的记录删除后只保留一个 [打印本页]

作者: 白河寒秋    时间: 2006-10-17 03:57
标题: (代码)依据指定字段,将该字段重复的记录删除后只保留一个
为解决EXCEL中某字段重复的只保留一个,其他行均删除(同事要求这样做的,违反数据库规则的免谈)

Sub del()
Dim Rs As New ADODB.Recordset
Rs.Open "select * from a", CurrentProject.Connection, adOpenDynamic, adLockOptimistic  'a为我要删除的有重复记录的表,先对a表做一些处理:"隶属单位"字段按生或者降序排列,这样,相同的记录都是按顺序排列了,

Dim del1As String '定义一个字符窜变量,存放"隶属单位"字段值,用他和当前记录做比较,值相同则删除当前记录,不同则将当前记录赋值给字符变量DEL1.
  Rs.MoveFirst
    del1 = Rs.Fields(5).Value'这里可以优化,将第一条记录的"隶属单位"值赋给变量,"隶属单位"在表的第6列上,从0开始数的,Rs.Fields(5).Value
   Do While Not Rs.EOF
             Rs.MoveNext
   Debug.Print del1
   If Rs.Fields(5).Value = del1 Then
     
            Rs.Delete 'adAffectCurrent
  Else
           del1 = Rs.Fields(5).Value
    End If
       Loop
Set Rs = Nothing

End Sub
作者: fan0217    时间: 2006-10-18 03:26
例子传上来。
作者: 白河寒秋    时间: 2006-10-18 17:35
http://www.office-cn.net/forum.php?mod=viewthread&tid=48849

在这里有!
作者: hxt1971    时间: 2008-9-6 20:39
谢谢啊!
作者: leileifan    时间: 2009-7-13 10:45
好东西,顶一下~~




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3