|
6#
楼主 |
发表于 2006-10-16 07:35:00
|
只看该作者
还是硬着头皮写了一段代码,终于解决了问题,不敢独享,发出来给大家指点了!
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 |
|