📜  vba clear collection - VBA (1)

📅  最后修改于: 2023-12-03 15:05:48.053000             🧑  作者: Mango

VBA Clear Collection - VBA

在 VBA 中,集合 (Collection) 是一种用于管理和存储对象的数据结构。 但有时候需要清空集合中的所有元素。本文将教你如何通过 VBA 代码快速清空集合。

清空集合

要清空 VBA 集合,需要遍历集合并删除其中的每个元素。可以通过以下代码实现:

Sub ClearCollection(ByRef col As Collection)
    Dim i As Long
    For i = col.Count To 1 Step -1
        col.Remove i
    Next i
End Sub

该子过程需要一个传递引用的集合 (col) 参数。 首先从集合的末尾开始循环,每次删除集合中的元素。 因此,取最后一个键(Count)并递减到第一个键(1)以确保删除所有元素。

示例

使用重复的值(例如“1,2,2,3,4,5,5”)填充以下集合,然后使用上面定义的方法清空该集合。

Sub Example()
    Dim myCol As Collection
    Set myCol = New Collection
    
    myCol.Add 1
    myCol.Add 2
    myCol.Add 2
    myCol.Add 3
    myCol.Add 4
    myCol.Add 5
    myCol.Add 5
    
    Debug.Print "集合未清空:"
    PrintCollection myCol ' 自定义输出集合元素的子过程
    
    ClearCollection myCol
    
    Debug.Print "集合已清空:"
    PrintCollection myCol
End Sub

Sub PrintCollection(ByRef col As Collection)
    Dim var As Variant
    For Each var In col
        Debug.Print var
    Next var
End Sub

输出结果:

集合未清空:
1
2
2
3
4
5
5
集合已清空:
总结

本文介绍了如何在 VBA 中清空集合。 要清空集合,需要遍历每个元素并删除它。使用上述子过程,几行代码即可轻松地实现该功能。