Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
array variable is empty?
Hi.
Pretend I have an integer array variable that I'm using for somthing, arIntArray() There's a loop that goes through and populates the elements of that array, which are a subset of the columns in the spreadsheet. If it turns out that there aren't any columns which meet the condition which populates the array, is there a quick way to determine that the array is still empty? Ubound(arIntArray) fails, becuase it's undefined. Is Nothing and Null also produced errors. If needed, I can put in a Boolean flag to set if the array gets populated, but it seems like there is likely another way. Thanks. Mark |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
array variable is empty?
Sub CCC()
Dim arIntArray() As Integer Dim ub As Long, res As Variant If Rnd() < 0.5 Then _ ReDim arIntArray(1 To 5) On Error Resume Next ub = UBound(arIntArray) res = Err.Number On Error GoTo 0 If res < 0 Then ' not dimmed MsgBox "Not Dimensioned" Else ' process the array MsgBox "Dimensioned" End If End Sub -- Regards, Tom Ogilvy "mark" wrote: Hi. Pretend I have an integer array variable that I'm using for somthing, arIntArray() There's a loop that goes through and populates the elements of that array, which are a subset of the columns in the spreadsheet. If it turns out that there aren't any columns which meet the condition which populates the array, is there a quick way to determine that the array is still empty? Ubound(arIntArray) fails, becuase it's undefined. Is Nothing and Null also produced errors. If needed, I can put in a Boolean flag to set if the array gets populated, but it seems like there is likely another way. Thanks. Mark |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
array variable is empty?
I don't know if there is anything built in. You can roll your own with
error trapping: Function IsEmptyArray(A As Variant) As Boolean Dim test As Long On Error GoTo must_be_empty test = UBound(A) IsEmptyArray = False Exit Function must_be_empty: IsEmptyArray = True End Function Sub test() Dim A() As Long Dim B() As Long ReDim B(1 To 2) B(1) = 5 MsgBox IsEmptyArray(A) MsgBox IsEmptyArray(B) End Sub Hope that helps -John Coleman mark wrote: Hi. Pretend I have an integer array variable that I'm using for somthing, arIntArray() There's a loop that goes through and populates the elements of that array, which are a subset of the columns in the spreadsheet. If it turns out that there aren't any columns which meet the condition which populates the array, is there a quick way to determine that the array is still empty? Ubound(arIntArray) fails, becuase it's undefined. Is Nothing and Null also produced errors. If needed, I can put in a Boolean flag to set if the array gets populated, but it seems like there is likely another way. Thanks. Mark |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
array variable is empty?
thanks, Tom...
so it's basically just seeing if checking the UBound throws an error. got it. "Tom Ogilvy" wrote: Sub CCC() Dim arIntArray() As Integer Dim ub As Long, res As Variant If Rnd() < 0.5 Then _ ReDim arIntArray(1 To 5) On Error Resume Next ub = UBound(arIntArray) res = Err.Number On Error GoTo 0 If res < 0 Then ' not dimmed MsgBox "Not Dimensioned" Else ' process the array MsgBox "Dimensioned" End If End Sub -- Regards, Tom Ogilvy "mark" wrote: Hi. Pretend I have an integer array variable that I'm using for somthing, arIntArray() There's a loop that goes through and populates the elements of that array, which are a subset of the columns in the spreadsheet. If it turns out that there aren't any columns which meet the condition which populates the array, is there a quick way to determine that the array is still empty? Ubound(arIntArray) fails, becuase it's undefined. Is Nothing and Null also produced errors. If needed, I can put in a Boolean flag to set if the array gets populated, but it seems like there is likely another way. Thanks. Mark |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
array variable is empty?
I don't know if there is anything built in. You can roll your own with
error trapping: something like that is what I was planning to do after seeing Ton's post, but now that I look at it again, I see that I don't even need to do that. The loop I have that populates the array by checking the columns, has two variables, i and j .. i for the columns, and j for the columns that meet the condition to be added to the array. j is incremented in the interior of the loop, and if j never gets incremented, then the array was never populated. so it turns out that all I have to do is check whether j is still 0. Thanks. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
If Range Variable isn't Empty | Excel Programming | |||
Empty Array | Excel Programming | |||
empty variable range | Excel Discussion (Misc queries) | |||
Is the array empty? | Excel Programming | |||
Problem trying to us a range variable as an array variable | Excel Programming |