Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
i'm trying to populate a 2 dimensional array with a value from a cell
(in the first column of the array) and a cell address of a related cell (in the second column). I don't know how many values i will have in the array, but i only need these two pieces of information. For u = 0 To numrows - t 'cycle through rows in table If StrConv(Trim(ActiveCell.Offset(u, 0)) & "_" & Trim (ActiveCell.Offset(u, 1)), vbUpperCase) = ulsheet Then If StrConv(ActiveCell.Offset(u, 5), vbUpperCase) = "YES" Then numpks = numpks + 1 ReDim Preserve pkfields(1 To numpks, 1 To 2) pkfields(numpks, 1) = ActiveCell.Offset(u, 2).Value 'populate array with value pkfields(numpks, 2) = ActiveCell.Offset(u, 8).Address 'populate array with address End If End If Next I'm getting "subscript out of range" error after the first lot of values have been put into the array. Not sure what i'm doing wrong so would appreciate any input. Cheers Julie |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Julie
You can only redim the last dimension of your array, so you have to swithch row to column like this: ReDim Preserve pkfields(1 To 2, 1 To numpks) pkfields(1, numpks) = ActiveCell.Offset(u, 2).Value 'populate array with value pkfields(2, numpks) = ActiveCell.Offset(u, 8).Address 'populate array with address Hopes this helps. .... Per On 10 Aug., 03:36, needhelp wrote: i'm trying to populate a 2 dimensional array with a value from a cell (in the first column of the array) and a cell address of a related cell (in the second column). I don't know how many values i will have in the array, but i only need these two pieces of information. For u = 0 To numrows - t 'cycle through rows in table *If StrConv(Trim(ActiveCell.Offset(u, 0)) & "_" & Trim (ActiveCell.Offset(u, 1)), vbUpperCase) = ulsheet Then * *If StrConv(ActiveCell.Offset(u, 5), vbUpperCase) = "YES" Then * * *numpks = numpks + 1 ReDim Preserve pkfields(1 To numpks, 1 To 2) * * *pkfields(numpks, 1) = ActiveCell.Offset(u, 2).Value 'populate array with value * * *pkfields(numpks, 2) = ActiveCell.Offset(u, 8).Address 'populate array with address * *End If * End If Next I'm getting "subscript out of range" error after the first lot of values have been put into the array. Not sure what i'm doing wrong so would appreciate any input. Cheers Julie |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
thanks Par .. knowing that helps :)
It works now. Cheers Julie |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Prevent cell/array references from changing when altering/moving thecell/array | Excel Discussion (Misc queries) | |||
Redimming an array dynamically assigned from range (how to redim first dimension of a 2-D array? /or/ reverse the original array order) | Excel Programming | |||
meaning of : IF(Switch; Average(array A, array B); array A) | Excel Worksheet Functions | |||
Array problem: Key words-Variant Array, single-element, type mismatch error | Excel Programming | |||
Array problem: Key words-Variant Array, single-element, type mismatch error | Excel Programming |