|
- Public Function ArrayRange(MyArray As Variant) As Integer
- '返回值:0-该变量不是数组,1-该变量为1维数组,2-该变量为2维数组,.....60-该变量为60维数组
- Dim i As Integer, RangeNum As Integer, Temp As Integer
- On Error GoTo ErrHandle
- If Not IsArray(MyArray) Then '首先判断传入的变量是否为数组
- ArrayRange = 0
- Exit Function
- End If
- For i = 1 To 60 '在VB中数组最大维数是60
- Temp = UBound(MyArray, i) '用UBound函数判断某一维的上界,如果大于数组的实际维数时将产生产生超出范围错误
- RangeNum = i
- Next i
- ArrayRange = RangeNum
- Exit Function
- ErrHandle:
- ArrayRange = RangeNum
- End Function
- Private Sub Form_Load()
- Dim a(4, 5, 6), i, n
- Debug.Print ArrayRange(a)
- End
- End Sub
复制代码 |
|