VBAで、配列のデータをセルに書き戻す方法について
1000行200列の配列があり、配列の5列目と6列目のデータを、セルの10列目と11列目にすばやく書き戻す方法を教えてください。
(方法1)
Dim DATA() As Long
ReDim DATA(1 To 1000, 1 To 200)
FOR 行番号= 1 TO 1000
CELLS(行番号,10).VALUE = DATA(行番号,5)
CELLS(行番号,11).VALUE = DATA(行番号,6)
NEXT
(方法2)
Dim DATA() As Long
ReDim DATA(1 To 1000, 1 To 200)
Dim WORK1() As Long
ReDim WORK1(1 To 1000, 1 To 1)
Dim WORK2() As Long
ReDim WORK2(1 To 1000, 1 To 1)
FOR 行番号= 1 TO 1000
WORK1(行番号,1) = DATA(行番号,5)
WORK2(行番号,1) = DATA(行番号,6)
NEXT
RANGE("J1:J1000").VALUE = WORK1()
RANGE("K1:K1000").VALUE = WORK2()
(方法1)より(方法2)の方が早いのですが、WORKに貯めるのもめんどうなので、
RANGE("J1:K1000").VALUE = DATA(1,5), DATA(2,5), DATA(3,5),~,DATA(999,6),DATA(1000,6)のようなことができればと思います。
よろしくお願いします。
お礼
おかげさまで、このコードを使って目的のものが作れました。ありがとうございました。