Can you make Range Equal All Values in an Array?
This doesn't seem to work. I am getting an "Application-defined or
Object-defined Error"
Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctrlArray),
lngColumn)).Value = ctrlArray
I am trying to list the control values of my userform. For example,
' get next available column number
lngColumn = 1
Do While Not IsEmpty(Sheets("Data Storage").Cells(1, lngColumn))
lngColumn = lngColumn + 1
Loop
myArray = Array("",Control1, Control2, Control3, Control4, Control5, Control6)
ERROR Sheets("Data Storage").Range(Cells(1, lngColumn),
Cells(UBound(ctrlArray), lngColumn)).Value = ctrlArray
Currently I use this loop to list the control values:
' store control values
For i = 1 To UBound(ctrlArray)
Sheets("Data Storage").Cells(i, lngColumn) = ctrlArray(i)
Next i
--
Cheers,
Ryan
"dbKemp" wrote:
On Nov 14, 8:34 am, RyanH wrote:
I currently fill a range with array values like this.
' store control values
For i = 1 To UBound(ctrlArray)
Sheets("Data Storage").Cells(i, lngColumn) = ctrlArray(i)
Next i
Is there a way to make this faster? I thought you could use this line
below, but it doesn't seem to work.
Sheets("Data Storage").Range(Cells(1, lngColumn), Cells(UBound(ctrlArray) +
1, lngColumn)) = ctrlArray
--
Cheers,
Ryan
You need to add .value to end of asignment eg Range("A1:A5).value
You may have to use the worksheetfunction transpose.
|