在许多语言中,可以检查对象是否可迭代,如何在VBA中执行此操作?

我可以试试:

Function isIterable(obj As Variant) As Boolean
    On Error Resume Next
    Dim iterator As Variant
    For Each iterator In obj
        Exit For
    Next
    isIterable = Err.Number = 0
End Function

但是我想知道是否有内置的或更好的方法?

最佳答案

是否有内置功能:
编号

有更好的方法吗?:

我会这样做的:

Function isIterable(obj As Variant) As Boolean

    On Error GoTo isIterable_Error

    Dim iterator As Variant

    For Each iterator In obj
        isIterable = True
        Exit Function
    Next

isIterable_Error:

End Function

因为在同一行上放置两次=有点太多。

09-27 21:08