Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I currently have an array of userform control values. I need to list these
controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
To write an array to a range the array will have to be a 2-D array and yours
is a 1-D array. Why worry about the For Next loop? Your array is very small, so performance-wise it won't make a difference. RBS "RyanH" wrote in message ... I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I really would like to learn how. The Loop works great, but I am trying to
learn to work with Array a little more. Is there a way to make it a 2-dimensional Array and make this code work? -- Cheers, Ryan "RB Smissaert" wrote: To write an array to a range the array will have to be a 2-D array and yours is a 1-D array. Why worry about the For Next loop? Your array is very small, so performance-wise it won't make a difference. RBS "RyanH" wrote in message ... I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Well, you can dim a 2-D array, loop through your 1-D array and copy to the
2-D array, but you won't gain much there. RBS "RyanH" wrote in message ... I really would like to learn how. The Loop works great, but I am trying to learn to work with Array a little more. Is there a way to make it a 2-dimensional Array and make this code work? -- Cheers, Ryan "RB Smissaert" wrote: To write an array to a range the array will have to be a 2-D array and yours is a 1-D array. Why worry about the For Next loop? Your array is very small, so performance-wise it won't make a difference. RBS "RyanH" wrote in message ... I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
So there is no way to set a Variant Variable to a 2D Array? For example,
ctrlArray = Array(Array(Control1, Control2, etc.),Array("")) -- Cheers, Ryan "RB Smissaert" wrote: Well, you can dim a 2-D array, loop through your 1-D array and copy to the 2-D array, but you won't gain much there. RBS "RyanH" wrote in message ... I really would like to learn how. The Loop works great, but I am trying to learn to work with Array a little more. Is there a way to make it a 2-dimensional Array and make this code work? -- Cheers, Ryan "RB Smissaert" wrote: To write an array to a range the array will have to be a 2-D array and yours is a 1-D array. Why worry about the For Next loop? Your array is very small, so performance-wise it won't make a difference. RBS "RyanH" wrote in message ... I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Don't think so.
RBS "RyanH" wrote in message ... So there is no way to set a Variant Variable to a 2D Array? For example, ctrlArray = Array(Array(Control1, Control2, etc.),Array("")) -- Cheers, Ryan "RB Smissaert" wrote: Well, you can dim a 2-D array, loop through your 1-D array and copy to the 2-D array, but you won't gain much there. RBS "RyanH" wrote in message ... I really would like to learn how. The Loop works great, but I am trying to learn to work with Array a little more. Is there a way to make it a 2-dimensional Array and make this code work? -- Cheers, Ryan "RB Smissaert" wrote: To write an array to a range the array will have to be a 2-D array and yours is a 1-D array. Why worry about the For Next loop? Your array is very small, so performance-wise it won't make a difference. RBS "RyanH" wrote in message ... I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub -- Cheers, Ryan |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
but I would like to not use a loop.
Hi. These are not controls, but does this idea help? Sub Demo() Dim v v = Array(11, 12, 13) Range("B1").Resize(3) = WorksheetFunction.Transpose(v) End Sub - - - HTH Dana DeLouis RyanH wrote: I currently have an array of userform control values. I need to list these controls values in a column. I currently use a For...Next Loop to list the elements, but I would like to not use a loop. The could I have below doesn't work, why? Option Base 1 Sub Test() Dim aryControls As Variant aryControls = Array(Control1, Control2, Control3, etc.) Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctlArray), lngColumn)).Value = ctlArray End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Can you make Range Equal All Values in an Array? | Excel Programming | |||
Setting a range.value equal to /part/ of a (3D) variant array? | Excel Programming | |||
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 | |||
SUMPRODUCT - How can I use does not equal in an array? | Excel Worksheet Functions | |||
What cells in a array equal my value? | Excel Worksheet Functions |