我有一个名为alterArray()
的数组,它会自动填充outlook的值(工作正常)。该数组最多有6个值,但有时数组只有3个值(因此alterArray(0-2)
填充值但alterArray(3-5)
为空)。
如果,例如,alterArray(5)是否有值?
,我如何检查非常感谢!
答案 0 :(得分:3)
考虑:
Sub HowEmptyIsIt()
Dim alterArray(0 To 5) As Variant
alterArray(0) = "X"
MsgBox IsEmpty(alterArray(5))
End Sub
答案 1 :(得分:3)
获取其实际维度,您可以使用辅助函数:
Function GetActualDimension(arr As Variant) As Long
Dim i As Long
If IsEmpty(arr) Then Exit Function
For i = LBound(arr) To UBound(arr)
If IsEmpty(arr(i)) Then Exit For
Next
GetActualDimension = i - 1
End Function
您可以在主代码中利用如下:
Sub main()
Dim alterArray As Variant
MsgBox GetActualDimension(alterArray) '-> returns zero
alterArray = Application.Transpose(Range("A1:A4").Value) ' fill your array
MsgBox GetActualDimension(alterArray) '-> returns "actual" size
End Sub