數(shù)字化工具VBA實(shí)戰(zhàn)經(jīng)驗(yàn)之五:動(dòng)靜數(shù)組及案例
伙伴們,大家好。今天分享動(dòng)靜數(shù)組及案例,僅供參考。我們每天進(jìn)步一點(diǎn),夢(mèng)想更近一步。
思語(yǔ):落花有意,流水無(wú)情。
? ? ? 落花本無(wú)意,流水亦有情。落花是生物更替的自然現(xiàn)象,而流水是生命之源,其撐起了我們的生命線,有重要意義。
落花在入水那刻起,就決定了它將隨流水飄游,亙古不變。但是落花在其盛開(kāi)時(shí)節(jié),也曾擁有沁人心脾的芬芳馥郁,使人愜意,它美化了我們的生活環(huán)境,也發(fā)揮了不同的作用。
由此可見(jiàn),我們?cè)诓煌哪挲g階段會(huì)有不同的任務(wù)需要去完成。像《企業(yè)會(huì)計(jì)準(zhǔn)則》描述持續(xù)經(jīng)營(yíng)假設(shè)一樣,我們還會(huì)有明天的明天的明天,但是我們?cè)僖不夭坏阶蛱斓淖蛱斓淖蛱?。因此,我們要的是不?fù)韶華只爭(zhēng)朝夕。

數(shù)組從用途來(lái)講,也可以劃分為靜態(tài)數(shù)組和動(dòng)態(tài)數(shù)組。
一、靜態(tài)數(shù)組
? 1、定義
數(shù)組長(zhǎng)度固定的數(shù)組??梢援?dāng)作成本管理模塊里的固定成本來(lái)理解,在一定條件和范圍內(nèi)不變,但當(dāng)條件發(fā)生變化,靜態(tài)數(shù)組也需另建。數(shù)組長(zhǎng)度可以理解為數(shù)組元素的個(gè)數(shù)。
? 2、特點(diǎn)
聲明時(shí)就指定數(shù)組長(zhǎng)度,其維數(shù)和大小固定不變。
? 3、聲明語(yǔ)句
聲明一個(gè)長(zhǎng)整型一維靜態(tài)數(shù)組,數(shù)組變量帶有數(shù)字的括號(hào)。
第一種方式:Dim myarray1(5) as long
括號(hào)里直接給定5,則下標(biāo)從0開(kāi)始編號(hào)至5,共計(jì)6個(gè)元素。
第二種方式:Dim myarray(1 To 6) as long
括號(hào)里是:1 to 6,則下標(biāo)從1開(kāi)始編號(hào)至6,共計(jì)6個(gè)元素。To是關(guān)鍵字幾到幾的意思。
上述第一種方式myarray1(0)與第二種方式的myarray(1)都是該數(shù)組的第一個(gè)元素,而myarray1(5)與myarray1(6)都是該數(shù)組的第六個(gè)元素,它們是等效的,只是元素的編號(hào)方式不同。
? ?4、數(shù)組的賦值
賦值語(yǔ)句:myarray1(0)="遠(yuǎn)昌財(cái)稅"
? ?5、數(shù)組的讀取
比如,按上述第一種方式定義后,顯示第一個(gè)數(shù)組元素:MsgBox myarray1(0),執(zhí)行后提示框顯示:遠(yuǎn)昌財(cái)稅
二、動(dòng)態(tài)數(shù)組
?? 1、定義
數(shù)組長(zhǎng)度隨業(yè)務(wù)條件而動(dòng)態(tài)變化的數(shù)組。我們可以理解為因地制宜,千變?nèi)f化。
???2、特點(diǎn)
聲明時(shí)不指定長(zhǎng)度,在程序執(zhí)行過(guò)程根據(jù)預(yù)設(shè)的業(yè)務(wù)條件而動(dòng)態(tài)調(diào)整數(shù)組長(zhǎng)度。其維數(shù)和大小隨業(yè)務(wù)條件變化。
? ?3、聲明語(yǔ)句
dim myarray2() as long ?'聲明一個(gè)長(zhǎng)整型動(dòng)態(tài)數(shù)組,數(shù)組變量帶一個(gè)空括號(hào)。
?? 4、數(shù)組的賦值
在賦值前需先重新定義數(shù)組的維數(shù)大小:
ReDim Preserve myarray2(1 to 6) as long
重新定義一個(gè)長(zhǎng)整型一維動(dòng)態(tài)數(shù)組,數(shù)組共計(jì)6個(gè)元素。Preserve關(guān)鍵字的作用是在重新定義數(shù)組維數(shù)大小后,數(shù)組中已存在的值仍會(huì)保留。
如果不帶Preserve,則數(shù)組中已存在的值會(huì)被新值替代,舊值不復(fù)存在。
比如,賦值語(yǔ)句:myarray2(1)="中國(guó)"
? ? 5、數(shù)組的讀取
比如,按上述賦值顯示第一個(gè)數(shù)組元素:MsgBox myarray2(1),執(zhí)行后提示框顯示:中國(guó)
三、靜態(tài)數(shù)組案例
編譯一個(gè)一維字符型靜態(tài)數(shù)組myarray1,共計(jì)4個(gè)元素。按F8鍵逐語(yǔ)句測(cè)試如圖:

四、動(dòng)態(tài)數(shù)組案例
編譯一個(gè)一維字符型動(dòng)態(tài)數(shù)組myarray2,共計(jì)4個(gè)元素,分兩次重新定義追加元素。按F8鍵逐語(yǔ)句測(cè)試如圖:

