simple? question about ranges

H

hke

Hi,

I don`t understand why my values are transposed , hopefully someon ca
help..
I`m trying to get values into the range Arr2 based on certain criteria
Basically i guess its like

Dim Arr1 As Range
Dim Arr2() As Variant

Arr2 = Worksheets("sheet2").Range("A1:A10").Value

Set Arr1 = Worksheets("sheet1").Range("A1:J1")

For i = 1 to 10
Arr1(i,1).Value = Arr2(i,1)
next i

and it works except the values are not written into the Arr2 range but
from the first cell in Arr2 and down in the column A. I want the value
to be written from A1 to A10.
frustrate
 
T

Tom Ogilvy

if you want to put the values from arr2 into the array arr1 then

Dim Arr1 As Range
Dim Arr2() As Variant

Arr2 = Worksheets("sheet2").Range("A1:A10").Value

Set Arr1 = Worksheets("sheet1").Range("A1:J1")

For i = 1 to 10
Arr1(i,1).Value = Arr2(1,i)
next i

if to write the values form Arr2 to the range A1:A10

Set Arr1 = Worksheets("sheet1").Range("A1:J1")

Worksheets("sheet2").Range("A1:A10").Value = Application.Transpose(Arr1)


It is unclear exactly what you want to do, but perhaps the above will give
you some ideas.
 
A

Alan Beban

Tom said:
if you want to put the values from arr2 into the array arr1 then

Dim Arr1 As Range
Dim Arr2() As Variant

Arr2 = Worksheets("sheet2").Range("A1:A10").Value
Will this work in xl97? :)
Set Arr1 = Worksheets("sheet1").Range("A1:J1")

For i = 1 to 10
Arr1(i,1).Value = Arr2(1,i)
next i
Aren't the subscripts interchanged?
if to write the values form Arr2 to the range A1:A10

Set Arr1 = Worksheets("sheet1").Range("A1:J1")

Worksheets("sheet2").Range("A1:A10").Value = Application.Transpose(Arr1)


It is unclear exactly what you want to do, but perhaps the above will give
you some ideas.

Alan Beban
 
T

Tom Ogilvy

comments in line
[ Arr2 = Worksheets("sheet2").Range("A1:A10").Value ] from original post
Will this work in xl97? :)
OP's code, not mine - he maintains it is working, so it must not be xl97
(where it wouldn't work as you know).
Aren't the subscripts interchanged?
Yep, should be
Arr1(1,i).Value = Arr2(i,1)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top