说到去除重复,在VBA里首先想到的应该是字典的应用,在
VBA调用外部对象01:字典Dictionary(去除重复数据)里也有过介绍。
除了使用VBA外,如果只是去除Excel数据的重复,Excel内置的功能:
数据-删除重复值,这个功能其实已经非常的好用了。
如果数据非常的规范,使用VBA调用ADO也是可以方便的去除重复:
代码语言:javascript复制Sub ADO去重()
Dim AdoConn As Object
Set AdoConn = VBA.CreateObject("ADODB.Connection")
'打开数据库
AdoConn.Open "Provider =Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;HDR=YES"";"
Range("E2").CopyFromRecordset AdoConn.Execute("select distinct 项目,姓名 from [Sheet1$A1:C21]", , 1)
AdoConn.Close
Set AdoConn = Nothing
End Sub
代码和汇总、查找数据等一样,仅仅是修改了sql语句,相比使用字典,代码更加的简单,在需要更换去重字段条件的时候,也更加的方便。