如何判断一个数组是一维数组还是二维数组?

解决方案 »

  1.   


    function checkdimension()as integer
        on error goto dimension2
        ubound(array,2)
        checkdimension=1
        exit function    dimension2:
        checkdimension=2
    end function
      

  2.   

    WizardBear(飞猫_重起机器)弄反了
    出错的应该是一维
      

  3.   

    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
    Private Declare Function ArrayPtr Lib "msvbvm60.dll" Alias "VarPtr" (TargetArray() As Any) As Long
    Private Sub Form_Load()
        Dim b(1, 2, 3, 4) As Byte
        
        
        Dim lpArray As Long, lDim As Long
        
        CopyMemory lpArray, ByVal ArrayPtr(b()), 4
        CopyMemory lDim, ByVal lpArray, 2
        Debug.Print "维数 = " & lDim
    End Sub
      

  4.   

    函数ArrayPtr是什么意思?大家觉得哪个方法效率高些?