gpt4 book ai didi

vba - 检查空数组

转载 作者:行者123 更新时间:2023-12-04 21:59:41 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to check for empty array in vba macro [duplicate]

(23 个回答)


7年前关闭。



Function IsVarArrayEmpty(anArray As Variant)

Dim i As Integer

On Error Resume Next
i = UBound(anArray, 1)
If Err.Number = 0 Then
IsVarArrayEmpty = False
Else
IsVarArrayEmpty = True
End If

End Function

它为未初始化返回真,为初始化返回假。我想看看它是否有任何数据/内容。但是,问题是我觉得即使数组中没有数据,上面的代码也会返回 false。我如何检查?

(我尝试将 string s 设置为等于字节数组。那是“”。这意味着数组是空的,对吧?)

最佳答案

我个人使用这个 - 现在如果你 ReDim一个带有 ReDim v (1 To 5) As Variant 的数组, isArrayEmpty(v)将返回 false 因为 v有 5 个项目,尽管它们都未初始化。

Public Function isArrayEmpty(parArray As Variant) As Boolean
'Returns true if:
' - parArray is not an array
' - parArray is a dynamic array that has not been initialised (ReDim)
' - parArray is a dynamic array has been erased (Erase)

If IsArray(parArray) = False Then isArrayEmpty = True

On Error Resume Next

If UBound(parArray) < LBound(parArray) Then
isArrayEmpty = True
Exit Function
Else
isArrayEmpty = False
End If

End Function

关于vba - 检查空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10559804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com