Is the Array Dimensioned?

Is the Array Dimensioned?

Use this function to determine whether a dynamic array has been dimensioned. I use dynamic arrays to store small, foreign key tables locally for fast lookups. Not wanting to load all the arrays initially, I load them only when needed and only once.

I wanted to exploit the fact that the array hasn’t yet been dimensioned as the indicator to load, instead of a Boolean variable, but I ran into complications with the standard tests in VB. My function returns True if the dynamic array passed to it has yet to be ReDim’d:

 Public Function IsArrayEmpty(aArray As Variant) As Boolean	On Error Resume Next	IsArrayEmpty = UBound(aArray)	IsArrayEmpty = Err ' Error 9 (Subscript out of range)End Function

Use this test code:

 Option Explicit Private Sub cmdTest_Click()	Dim aDynamic() As Integer	MsgBox IsArrayEmpty(aDynamic)	ReDim aDynamic(8)	MsgBox IsArrayEmpty(aDynamic)End Sub 


Share the Post: