作者kgreatheart (神之左手魔之右手)
看板Visual_Basic
標題[VBA ] 用陣列代替 Range
時間Tue Nov 18 23:20:17 2014
請教關於陣列代替 Range如下:
dim arr() as Variant
'(1) 可將儲存格的值放入陣列arr內
arr=Range("A1:E400")
'(2) 可將陣列內的值放入儲存格內
Range("A1:E400")=arr
如果有多欄且包含不相鄰 (列數相同) 的儲存格
可如 (1) 方法,放入 arr 內嗎?
或如 (2) 方法,放入指定(包含不相欄)的欄內嗎?
---------------------------------------
關於 (1) 有想過使用如下,但只能寫入 Range("A1:A400") 的值到 arr
Set r1 = Range("A1:A400")
Set r2 = Range("D1:D400")
Set myMultiAreaRange = Union(r1, r2)
arr=myMultiAreaRange.Value
---------------------------------------
請教程式該如何作修改,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.195.2.102
※ 文章網址: http://www.ptt.cc/bbs/Visual_Basic/M.1416324020.A.F42.html
→ MOONRAKER: for r=r0 to r1 : for c=c0 to c1 11/19 07:06
→ MOONRAKER: cells(r, c) = arr(r*p+m, c*q+n): next 11/19 07:07
→ MOONRAKER: 逐格抄過去。 11/19 07:07
→ kgreatheart: 謝謝回覆。儲存格或陣列要一列一列或一欄一欄的貼到 11/20 00:59
→ kgreatheart: 陣列或儲存格,沒有這樣的用法,只能逐格抄過去嗎? 11/20 01:01