如何在VBA中加入集合

Ben*_*enj 8 collections vba join

有没有办法在VBA中加入一个集合?我可以找到join(array,";"),但是这个函数不能应用于集合.

谢谢.

Hei*_*nzi 10

不幸的是,不,内置任何东西.

你必须要么

  • 将集合转换为数组(没有内置的,你必须遍历所有项目)然后使用Join(array, ";")

  • 加入你的收藏"艰难的方式"(设置first标志,循环项目,添加";"如果没有first,清除first,添加项目).


Vit*_*ata 6

这是加入它的方法:

Join(CollectionToArray(colData), ",")
Run Code Online (Sandbox Code Playgroud)

和功能:

Public Function CollectionToArray(myCol As Collection) As Variant

    Dim result  As Variant
    Dim cnt     As Long

    ReDim result(myCol.Count - 1)

    For cnt = 0 To myCol.Count - 1
        result(cnt) = myCol(cnt + 1)
    Next cnt

    CollectionToArray = result

End Function
Run Code Online (Sandbox Code Playgroud)