Just curious if there is a way to programmatically determine how many dimensions a dynamic array has. eg:
vb Code:
  1. Sub Test()
  2.     Dim varArray As Variant
  3.     Dim lngArray() As Long
  4.    
  5.     Debug.Print ArrayDimensions(varArray) & "," & ArrayDimensions(lngArray)
  6.     ReDim varArray(9)
  7.     ReDim lngArray(9)
  8.     Debug.Print ArrayDimensions(varArray) & "," & ArrayDimensions(lngArray)
  9.     ReDim varArray(9,9)
  10.     ReDim lngArray(9,9)
  11.     Debug.Print ArrayDimensions(varArray) & "," & ArrayDimensions(lngArray)
  12.     Erase varArray, lngArray
  13.     Debug.Print ArrayDimensions(varArray) & "," & ArrayDimensions(lngArray)
  14. End Sub
  15.  
  16. Function ArrayDimensions(pvarArray As Variant) As Long
  17.     ' ???
  18. End Function
Which would ideally look like this in the debug window:

Test
0,0
1,1
2,2
0,0

Any ideas?