Sub main已成功实现VBA多列提取唯一值()
Dim d As Object
Set d = CreateObject("scripting.dictionary")
Dim arr
arr = Range("a2:c" & Cells(Rows.Count, "c").End(3).Row)
ReDim brr(1 To UBound(arr), 1 To 3)
For i = 1 To UBound(arr)
s = arr(i, 1) & arr(i, 2) & arr(i, 3)
If Not d.exists(s) Then
d(s) = ""
m = m + 1 '之前没有这一句
For j = 1 To 3
brr(m, j) = arr(i, j) '之前这里是brr(i,j)=arr(i,j) ,结果有重复的那一行,在结果区是空行。
Next
End If
Next
[h2].Resize(UBound(arr), 3) = brr
End Sub
联系客服