Sub A()
Dim A(1 To 100)
Dim b As New Collection
Dim i As Integer
A(1) = 1
A(2) = 3
A(3) = 5
A(4) = 7
A(5) = 3
A(6) = 5
A(7) = 2
On Error Resume Next
For i = 1 To 100
b.Add A(i), Str(A(i))
Next i
For i = 1 To b.Count
A(i) = b(i)
Next i
End Sub
Sub zidian()Dim d, r, ar, i
Set d = CreateObject("scripting.dictionary")
r = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
ar = Range("a2:a" &r)
For i = 1 To UBound(ar)
d(ar(i, 1)) = ""
Next
[c2].Resize(d.Count, 1) = Application.Transpose(d.keys)
Set d = Nothing
End Sub
你直接说你要做什么吧,一般没人用Collection,EXcelhome论坛上几乎没有人用Collection。你写这么烂的程序,浪费我半小时调试时间,真不值。
我们去重就两种方法,要么用excel数据菜单里自带的‘删除重复值’,录制个宏自己改;要么用字典,值写进去就OK,再把d.keys给回数组或excel表格区域。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)