借助工作表為二維陣列賦值就非常簡單直接了,示例**如下。
sub demo4(
)dim myarray
myarray = range(
"a1:c3"
)stop
endsub
如願以償的生成了3x3的二維陣列。
如果陣列中的資料是在**中生成的,也不是必須要借助工作表單元格,才能實現為二維資料賦值,很多時候從**執行效率考慮,一般都盡量少對工作表物件進行讀寫操作。示例**如下。
sub demo5(
)dim myarray1, myarray2
myarray1 =
myarray2 =
array
(array
("1"
,"11"
,"111"),
array
("2"
,"22"
,"222"),
array
("3"
,"33"
,"333"))
stop
endsub
執行結果如下。第3行**實現與demo4
中完全相同的結果。其中[ ... ]
是evaluate
方法簡寫形式。
第4行**產生的是乙個巢狀陣列,也是有3個元素的一維陣列,但是每個元素中儲存的資料仍然是陣列,例如myarray2(1)是個包含3個元素的陣列,其值分別為"1", "11", "111"
,注意這種巢狀陣列的引用方式與普通二維陣列是不同的(插圖中黃色高亮部分)。
VBA 二維陣列整體直接賦值的方法小結
一維陣列可以通過這樣一行 來整體賦值 arr array 你 我 他 1,2,3,aa bb cc 那麼,如果想給二維陣列採用類似的方法來整體賦值,要怎麼辦呢?arr array 你 我 他 1,2,3 aa bb cc 好像不行。一番搜尋,網上給出的答案有如下 第一種 使用 將字串括起來,字串行間...
VBA 二維陣列氣泡排序例項
學習vba的同學經常會用到陣列的排序,網上介紹的程式演算法一般都是舉例一維陣列,增加了公升降序選擇,排序列號選擇,以及標題行數等實際需要使用的引數 private sub test dim arr sheets sheet1 select row sheets sheet1 usedrange.ro...
VBA陣列賦值
先說一下,剛才乙個錯誤的操作,連儲存的草稿都沒了,這也太懸了。以後還是在本地寫好了再放上來。陣列是這樣賦值的 dim a2 10 as integer 10是可以使用的最大上標,這和c語言不太一樣 dim a3 2 to 10 as integer 也可以定義下標 dim a1 as integer...