《VBA經典應用69例》(版權10178981),是我推出的第九套教程,教程是專門針對初級、中級學員在學習VBA過程中可能遇到的案例展開,這套教程案例眾多,緊貼“實戰”,并做“戰術總結”,以便大家能很好的應用。教程的目的是要求大家在實際工作中要利用好VBA。本套教程共三冊六十九個專題,今日內容:VBA經典應用69例應用9:ReDim語句的語法
【分享成果,隨喜正能量】227 生活里,能夠同行的人,比風景更重要;因為,很多時候,同行的人,其實就是風景。人生像一只皮箱,需要用的時候提起,不用的時就把它放下,應放下的時候,卻不放下,就像拖著沉重的行李,無法自在。人生的歲月有限,認錯、尊重、包容才能讓人接受,放下才自在啊。
應用9 VBA中的ReDim聲明語句
大家好,我們這講開始一個新的應用專題講解,就是VBA中的ReDim聲明語句,這個專題應用的講解也是結合給學員答疑的頻度來講解的,很多學員都問我ReDim的用法,所以我將努力結合我多年應用經驗并結合一些經典的用法展示給大家。
ReDim語句用于在VBA中聲明動態數組的大小。以后可以根據需要多次使用它,并重新聲明數組的大小。它只能用于動態VBA數組(在原始聲明中未聲明數組大小),不適用于固定VBA 數組(在原始聲明中聲明數組大小)。
1 ReDim語句的語法
這個語句在過程級使用, 用于為動態數組變量重新分配存儲空間。
語法:ReDim [ Preserve ] varname ( subscripts ) [ As type ], [ varname ( subscripts ) [ As type ]] . . .
參數:
1)Preserve 可選。關鍵字,用于在更改最后一個維度的大小時將數據保存在現有數組中。
2)varname 必需。 變量的名稱;緊跟命名約定的標準變量。
3)subscripts 必需。 數組變量的維度;最多可以聲明 60 個維度。下標參數使用以下語法:
[lowerTo] upper [,[ lowerTo ] upper] . . .
如果未明確規定 lower的下限, 則由Option Base語句控制數組的下限。如果不存在 Option Base 語句,則下限為零。
4)type 可選。 變量的數據類型;可以是Byte、 Boolean、 Integer、 Long、 Currency、 Single、Double、Decimal (目前不支持)、 Date、 String (對于可變長度字符串) 字符串長度(對于固定長度的字符串)、對象、變量、用戶定義類型或對象類型。
對要定義的每個變量使用單獨的As type子句。 對于包含數組的 Variant,type 描述數組的每個元素,但不會將 Variant 更改為某種其他類型。
- 可以反復使用ReDim語句來更改數組中的元素和維度的數目。 但是,不能先聲明一種數據類型的數組,然后使用ReDim將該數組更改為其他數據類型,除非該數組包含在 Variant中。如果數組包含在Variant中,則可以使用As type子句更改元素的類型, 除非使用Preserve關鍵字, 在這種情況下, 不允許對數據類型進行任何更改。
- 如果使用Preserve關鍵字,則只能調整最后一個數組維度的大小,并且無法更改維度數目。例如,如果你的數組只有一個維度,則可以調整該維度的大小,因為它既是最后一個維度,也是唯一的一個維度。但是,如果數組有兩個或更多維度,則只能更改最后一個維度的大小并保留數組的內容。
我20多年的VBA實踐經驗,全部濃縮在下面的各個教程中: