View Single Post
  #10   Report Post  
Posted to microsoft.public.excel.programming
Gary Keramidas Gary Keramidas is offline
external usenet poster
 
Posts: 2,494
Default another array approach question

thanks dave, i have code that works, i was just wondering about the technique i
posted.

i think i may have even adapted some of your code:

ReDim arr(0 To 1, 0 To 0)
For q = 12 To lRowIng
If .Cells(q, "B").Value < "" Then
ReDim Preserve arr(0 To 1, 0 To arraySize)
arr(0, arraySize) = .Cells(q, "B").Value
arr(1, arraySize) = .Cells(q, "F").Value
arraySize = arraySize + 1
End If
Next

--


Gary


"Dave Peterson" wrote in message
...
You could loop through the range:

Option Explicit
Sub testme()

Dim myArr() As Variant
Dim myRng As Range
Dim myCell As Range
Dim iRow As Long

With ActiveSheet
Set myRng = .Range("d2:d21")
End With

ReDim myArr(1 To myRng.Rows.Count, 1 To 2)
iRow = 0
For Each myCell In myRng.Cells
iRow = iRow + 1
myArr(iRow, 1) = myCell.Value
myArr(iRow, 2) = myCell.Offset(0, 2).Value
Next myCell

End Sub


Gary Keramidas wrote:

you're right, it probably won't. i was wondering how to get the values from
column f from the array and couldn't.

--

Gary

"Dave Peterson" wrote in message
...
Is it possible? Yes.
Does it work the way you want? I bet not.

It'll pick up the values in the first area and plop them into the array.

But you should try it and see.

Gary Keramidas wrote:

just curious, is something like this possible?

arr = Range("d2:d21,f2:f21")

--

Gary

"Dave Peterson" wrote in message
...
To find the number of "rows"
msgbox ubound(arr,1) - lbound(arr,1) + 1

To find the number of "columns" in that array:
msgbox ubound(arr,2) - lbound(arr,2) + 1

If you want the total elements, just multiply these two.



Gary Keramidas wrote:

let's see if i can explain clearly.

i'm using this to initialize the array
ReDim arr(0 To 1, 0 To 0)

then i use a redim preserve to add the elements

how can i tell how many elements there are to loop through?

ubound(arr) returns 1 and i know there are more elements than that.

--

Gary

--

Dave Peterson

--

Dave Peterson


--

Dave Peterson