29、[VBA入門到放棄筆記] 數(shù)組基礎(chǔ)

  • 什么是數(shù)組?
    • 在Excel里數(shù)組就是一個自由縮放的‘工作表‘,可以自定義決定大?。◣仔袔琢校?。但不能只是一個單元格,因為‘工作表’是單元格集合。
  • ‘工作表’用來存儲數(shù)據(jù),數(shù)組同樣用來存儲數(shù)據(jù)。數(shù)組是存放在內(nèi)存當(dāng)中的,在代碼當(dāng)中操作數(shù)組要比操作工作表快很多很多。

  • 數(shù)組的的維度
    • 數(shù)組一般有一維數(shù)組和二維數(shù)組,當(dāng)然還有三維、四維......但一般只用到二維,其他都用不到,不需要糾結(jié)。

  • 數(shù)組的聲明
    • 1、數(shù)組的下界如果缺省默認(rèn)從0開始。

Dim arr(2)

    - 聲明一個含有3個元素的一維數(shù)組,即arr(0),arr(1),arr(2),這里看到,數(shù)組的起始是默認(rèn)由0開始的。

 - 2、聲明數(shù)組的數(shù)據(jù)類型

Dim arr(2) As Integer

    - 聲明一個含有3個元素的一維數(shù)組,數(shù)據(jù)類型為整型。如果沒聲明數(shù)據(jù)類型,自然就是Variant類型,和聲明變量一個道理。

  - 3、數(shù)組的邊界

Dim arr(1 To 10)

  - 聲明一個含有10個元素的一維數(shù)組,數(shù)組的索引從1(下界)開始,上界是10。

Dim arr(1 To 10, 1 To 20)

 - 聲明一個10行20列的二維數(shù)組。二維數(shù)組相對于上面的一維數(shù)組,有2個維度,自然每個維度都有各自的邊界。
先看1 to 10,這是二維數(shù)組的第一維,下界是1,上界是10,也就是10行的范圍;
再看1 To 20,這是二維數(shù)組的第二維,下界是1,上界是20,也就是20列的范圍。
這個數(shù)組如果輸出到工作表上,就是一個10行20列大小的單元格區(qū)域(一個微型的‘工作表’)

***
- 4、獲取數(shù)組的上界和下界

- Lbound函數(shù):獲取數(shù)組的下界
- Ubound函數(shù):獲取數(shù)組的上界

Sub 數(shù)組()
Dim ar1(2)
Dim ar2(1 To 5)
Dim ar3(1 To 5, 1 To 10)

a = LBound(ar1)
b = UBound(ar1)

c = LBound(ar2)
d = UBound(ar2)

'二維數(shù)組ar3有2個維度
e = LBound(ar3, 1)'第一個維度的下界
f = UBound(ar3, 1)'第一個維度的上界

g = LBound(ar3, 2)'第二個維度的下界
h = UBound(ar3, 2)'第二個維度的上界

End Sub


![](http://upload-images.jianshu.io/upload_images/4364421-d82497206c52b552.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

- 由上可以知道Lbound和Ubound的寫法是:Lbound(數(shù)組名稱,維度);如果維度是1,可以省略,如e = LBound(ar3, 1)相當(dāng)于e = LBound(ar3),但二維度及以上不能省略。
- 另外注意一維數(shù)組和二維數(shù)組元素的表示方法不同,一維數(shù)組,如ar1(0),ar2(3)....二維數(shù)組,如ar3(1,1),ar3(2,4)這和cells(行,列)表示方法其實是一樣的原理。
- 可以這么認(rèn)為:
   - 二維數(shù)組就是一個‘類工作表’,可以當(dāng)成一張工作表操作,數(shù)組中的元素就是單元格。
   - 一維數(shù)組,可以認(rèn)為是‘工作表’中的一行或一列,數(shù)組中的元素也就是單元格。但要注意的是:
   - 【工作表中的一行或者一列并不是一維數(shù)組,而是二維數(shù)組,這里要記住的是,凡是數(shù)組賦值來源于工作表(單元格區(qū)域)的都是二維數(shù)組,給數(shù)組賦值的時候就會知道。】
***
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容