我目前会使用类似的东西与范围,单元格或类似的许多不同的方式相同的基本原理。
Range("A1", Range("A1").End(xlDown)).AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=Range("IV1"), Unique:=True
Dim myArr as Variant
myArr = Range("IV1", Range("IV1").End(xlDown))
Columns("IV").Delete
有没有办法直接将这些唯一值加载到 VBA 中的任何类型的对象中,而不需要复制到另一个位置?
您可以使用Collection Object
创建独特的条目。例如
Sub Sample()
Dim Col As New Collection
Dim itm
Dim i As Long
Dim CellVal As Variant
'~~> Lets say looping through Row 1 to 22 For
'~~> Range("A1:A22") as mentioned in your recent comment
For i = 1 To 22
CellVal = Sheets("Sheet1").Range("A" & i).Value
On Error Resume Next
Col.Add CellVal, Chr(34) & CellVal & Chr(34)
On Error GoTo 0
Next i
For Each itm In Col
Debug.Print itm
Next
End Sub
截屏:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)