|
Sub test()
Dim d As Object, dc As Object
Set d = CreateObject("scripting.dictionary")
With Sheet1
r = .Cells(Rows.Count, 3).End(xlUp).Row
rs = .Cells(Rows.Count, 2).End(xlUp).Row
If rs >= r Then
ar = .Range("b4:b" & r)
ReDim br(1 To 5)
For i = UBound(ar) To 5 Step -1
If Trim(ar(i, 1)) <> "" Then
If Not d.exists(ar(i, 1)) Then
n = n + 1
If n > 5 Then Exit For
br(n) = ar(i, 1)
d(ar(i, 1)) = ""
End If
End If
Next i
.Cells(r + 1, 3).Resize(1, 5) = br
ElseIf rs < r Then
End If
End With
End Sub
请帮忙完善这个编码。附件是案例
把B列向上不同的5个数字排列在对应的下一行。这个VBA函数已经完成,但是目前是点击一下执行一次,如何才能一次把余下的一起执行。
还有同样的算法如何用一个编码把H列及类推数组包括进去。
|
|