VBA陣列賦值(2 2) 二維陣列

2021-10-23 03:33:07 字數 988 閱讀 4062

借助工作表為二維陣列賦值就非常簡單直接了,示例**如下。

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...