設計思想:
在VB中數姐最大維數是60,是以我們通過錯誤捕捉來處理這個問題,在這裡我們用到UBound函數
Public Function ArrayRange(mArray As Variant) As Integer
Dim i As Integer
Dim Ret As Integer
Dim ErrF As Boolean
ErrF = False
On Error GoTo ErrHandle
'判斷代入的參數是否為數組
If Not IsArray(mArray) Then
ArrayRange = -1
Exit Function
End If
'VB中數組最大為60
For i = 1 To 60
'用UBound函數判斷某一維的上界,如果大數組的實際維數時産生超出範圍錯誤,
' 此時我們通過Resume Next 來捕捉錯這個錯誤
Ret = UBound(mArray, i)
If ErrF Then Exit For
Next i
'最後傳回
ArrayRange = Ret
Exit Function
ErrHandle:
Ret = i - 1
ErrF = True
Resume Next
End Function