以下是引用有点甜在2017/8/7 15:33:00的发言:
方法一:
http://www.foxtable.com/webhelp/scr/1478.htm
方法二:
Dim idx As String = "-1,"
Dim idx_temp As String = ""
Dim pdr As DataRow = Nothing
Dim count As Integer = 0
Dim cs As String = "第一列,第二列"
For Each dr As DataRow In DataTables("表A").Select("", cs)
Dim flag As Boolean = False
If pdr IsNot Nothing Then
For Each c As String In cs.split(",")
If pdr(c) <> dr(c) Then
flag = True
Exit For
End If
Next
If flag Then
If count > 1 Then
idx &= idx_temp
End If
count = 1
idx_temp = ""
Else
count += 1
idx_temp &= dr("_Identify") & ","
End If
Else
count += 1
End If
pdr = dr
Next
If count > 1 Then
idx &= idx_temp
End If
Tables("表A").Filter = "_Identify not In (" & idx.trim(",") & ")"
'DataTables("表A").DeleteFor("_Identify not In (" & idx.trim(",") & ")")
倒数第二行的语句,只是把重复的数据筛选成只显示一条,并没有做到删除的作用。
我把倒数第二行注释了,把倒数第一行调用出来,虽然可以删除了,但是一次只能删除一条。
而且重复数据删除只剩一条时,在点一下删除按钮,会把最后一条也删除了,有没有比较好的解决方法?