统计数组元素个数的自定义函数CountArray
'本函数由阿杰编写于:2011.10.10
Function CountArray(数组名)
Dim i, s
For Each i In 数组名
s = s + 1
Next
CountArray = s
End Function
例子:
Dim A(-5 To 8) As Integer
Debug.Print CountArray(A)
'Dim A(1 To 6, 6) As String定义的数组包含的元素个数是( )。
'A. 36
'B. 49
'C. 42
'D. 50
'最佳答案 C
'这个应该是VB或者VB.net的语法
'VB中数组在无特殊声明情况下从0开始
'所以Dim A(1 To 6, 6) As String可翻译为Dim A(1 To 6, 0 To 6) As String
'及一个二维字符型数组,第一维下标从1到6共6个,第二维从0到6共7个
'所以元素个数 = 6 * 7 = 42
Dim A2(1 To 6, 6) As String
Debug.Print CountArray(A2)
Dim A3(6 To 61, 8) As String
Debug.Print CountArray(A3)
Dim A4(-5 To 8)
Debug.Print CountArray(A4)
Dim a5(-1 To 1, 3)
Debug.Print CountArray(a5)
不错! 貌似有LBound和UBound函数 直接获取上限和下限 上限-下限+1 就是数组元素个数了... 不错 LBound 和 UBound 是取下标和上标的不是数组元素个数
你试下下面的代码就知道了
Dim A(-5 To 8) As Integer
Debug.Print LBound(A), UBound(A)
结果显示:-5 8
如果用 Debug.Print CountArray(A)
结果显示 14 表示A数组有14个元素 那就直接:
abs(LBound(A)) + abs(UBound(A)) + 1 Ubound(A) - LBound(A) + 1
页:
[1]