版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2面VBA語(yǔ)法基礎(chǔ)第2章VBA語(yǔ)法基礎(chǔ)和其他編程語(yǔ)言類似,VBA程序代碼也是有基礎(chǔ)語(yǔ)句組成的。在本章中,將結(jié)合具體 的例子來(lái)介紹語(yǔ)法的基礎(chǔ)內(nèi)容。主要包括輸入、愉出語(yǔ)句、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)等。 在講解各例子的時(shí)候,將詳細(xì)分析例子的應(yīng)用范圍。2.1輸入和輸出語(yǔ)句在本小節(jié)中,將詳細(xì)講解最基礎(chǔ)的語(yǔ)法結(jié)構(gòu):順序結(jié)構(gòu)。順序結(jié)構(gòu)不需要使用特殊的 控制語(yǔ)句,編輯工具按照用戶編寫的程序語(yǔ)句依次編譯,依次執(zhí)行。本小節(jié)中,將詳細(xì)講 解最基礎(chǔ)的順序語(yǔ)句:輸入和輸出語(yǔ)句。案例8輸出數(shù)據(jù)表1 .功能說(shuō)明在Excel VBA中,用戶可以使用Print方法輸入各種類型的數(shù)據(jù)。同時(shí),用戶可以在 程序代碼中設(shè)置不同的輸出,來(lái)檢
2、測(cè)程序代碼.2 .語(yǔ)法說(shuō)明在Excel VBA4/7, Print方法組要應(yīng)用于Debug的嗦,其語(yǔ)法格式如下:*outputlist走小二暴例的走也式我勾走。如果省懿"數(shù),則打卬空白行,Print方 法先計(jì)算表達(dá)式的數(shù)值,然后輸出結(jié)果.在outputlist參數(shù)中還可以使用分隔符,格式化 輸出的結(jié)果,分隔符有以下幾種: Spc(n)/插入n個(gè)空格到輸出數(shù)據(jù)之間: Tab(n)/移動(dòng)光標(biāo)到適當(dāng)位置,n為移動(dòng)的列數(shù); 分號(hào):表示前后兩個(gè)數(shù)據(jù)項(xiàng)連在一起輸出: 逗號(hào):以4個(gè)字符為一個(gè)輸出區(qū),每個(gè)數(shù)據(jù)輸出到對(duì)應(yīng)的輸出區(qū)。3 .案例說(shuō)明本例使用Print方法向VBE的立即窗口中輸出數(shù)據(jù)表。4
3、.編寫代碼輸出數(shù)據(jù)表的代碼如下:Sub GetNumbersODim i As IntegerDim j As IntegerFor i = 1 To 5Forj = 1 To iDebug.Printi;"j; 士; i+j;NextDebug.PrintNextEnd Sub5 .運(yùn)行結(jié)果按功能鍵T5 ”運(yùn)行子過(guò)程,在“立即窗口 ”輸出數(shù)據(jù)計(jì)算表,如留2.1所示。4 q = a5 q = 9 5 + 5 = 101*1 = 2 f I = 3*1 = q * i = 5*1 =4567二二二 2 2 2223 , 582 3 q 5圖2.1輸出結(jié)果6 .程序分析在上而的程序代碼中
4、,利用循環(huán)結(jié)構(gòu)依次輸出不同情況的數(shù)字計(jì)算結(jié)果。關(guān)于循環(huán)結(jié) 構(gòu)的知識(shí),將在后面章節(jié)中詳細(xì)講解。案例9輸入用戶名1 .功能說(shuō)明/Excel VBA開發(fā)過(guò)程中,經(jīng)常需要和用戶進(jìn)行交互。例如,很多程序代碼的結(jié)果依 賴于用戶愉入的信息。這個(gè)時(shí)候,用戶需要調(diào)用愉入函數(shù),提供用戶輸入信息,并接收用 戶所輸入的信息。2 .語(yǔ)法說(shuō)明在Excel VBA中,用戶可以使用InputBox函數(shù)輸入信息、。該函數(shù)將打開對(duì)話框,用 戶可以在對(duì)話框中輸入數(shù)據(jù),并返回所輸入的內(nèi)容。其語(yǔ)法格式如下:lnputBox(promptt title (. default , xpos , yposL helpfile, contex
5、t)各參數(shù)的含義如下: Prompt:對(duì)話框消息出現(xiàn)的字符串表達(dá)式。最大長(zhǎng)度為1024個(gè)字符。如果需要在對(duì) 話框中顯示多行數(shù)據(jù),則可在各行之間用回車符換行符來(lái)分隔。 Title/對(duì)話框標(biāo)題欄中的字符串。如果省略該參數(shù),則把應(yīng)用程序名放入標(biāo)題欄中。 Default:顯示在文本框中的字符串。如果省略該參數(shù),則文本框?yàn)榭铡?Xpos;和'晚成對(duì)出現(xiàn),指定對(duì)話框的左邊與屏幕左邊的水平距離。如果省略該參 數(shù),則對(duì)話框會(huì)在水平方向居中。 Ypos;和乂艘成對(duì)出現(xiàn),指定對(duì)話框的上邊與屏幕上邊的距離。如果方略該參數(shù), 則對(duì)話框被放置在屏幕垂直方向距下邊大約三分之一的位置“ Helpfile/設(shè)置對(duì)話框
6、的幫助文件,可省略。 Contexts設(shè)置對(duì)話框的都助主題編號(hào),可省略。3 .案例說(shuō)明在本例中,將演示使用Tnpwgox函數(shù)對(duì)話框輸入信息,然后將信息愉出到立即窗口中。4 .編寫代碼在模塊中輸入以下代碼:Sub CetUserName()Dim Title As StringDim Name As StringDim StrName As StringTitle1輸入用戶名”Name = "在選框中輸入用戶名:“StrName = lnputBox(Name, Title)Debug.Print ”用戶名:StrNameEnd Sub5 .運(yùn)行結(jié)果(I)按功能鍵午5 ”運(yùn)行子過(guò)程,將
7、彈出“輸入個(gè)人信息”窗口,如圖2.2所示。住 對(duì)話框中輸入內(nèi)容后單擊“確定”按鈕。(2)在“立即窗口”中將輸出這些內(nèi)容,如圖23所示。圖2.2輸入用戶名圖2.3輸出結(jié)果6 .程序分析本案例比較簡(jiǎn)單,直便便以InputBox函數(shù)來(lái)愉入信息。對(duì)干InputBox函數(shù)的其他參 數(shù),都直接使用默認(rèn)數(shù)值U在實(shí)際開發(fā)中,用戶可以設(shè)置這些參數(shù)的數(shù)值,實(shí)現(xiàn)不同的功 能。案例10事件確認(rèn)1 .功能說(shuō)明/Excel VBA編碼和調(diào)試代碼的過(guò)程中,經(jīng)常需要獲取代碼運(yùn)行的階段性結(jié)果或者信 ,以 例如,在編寫數(shù)據(jù)處理的代碼中,用戶需要跟蹤某變量的數(shù)值變化。質(zhì)憶 需要住程 序進(jìn)行的不同地方,顯示該變量的數(shù)值。2 .語(yǔ)法說(shuō)
8、明在Excel VBA中,用戶可以使用Ms訕ox函數(shù)來(lái)顯示提示信息。MsgBox函數(shù)可打開 對(duì)話框,顯示提示信息。并根據(jù)用戶選擇對(duì)話框中的按鈕,執(zhí)行不同的程序代碼。其語(yǔ)法 格式如下:Value=MsgBox(prompt,buttonsytleLhelpfile,context)通過(guò)函數(shù)返M值可獲得用戶單擊的按鈕,并可根據(jù)按鈕數(shù)值而選擇3:來(lái)執(zhí)行。函數(shù)有5個(gè)參數(shù),各參數(shù)的意義與KpyMox函數(shù)參數(shù)的意義類似。對(duì)于bultons參投,其含義是指定顯示按鈕的數(shù)目及形式、使用提示圖標(biāo)樣式以及默 認(rèn)按鈕等,其常數(shù)值如表2,所示。表2.1按鈕常數(shù)值常量值說(shuō)明vbOkOnly0只顯示“確定按鈕vbOkCa
9、ncel1顯示“確定 (0k)/ 啜酒” (Cancel)夜斂vbAbonRetrylgnore2始示“4;T終/尸”(Abort)、“亞試”(Retry)及“忽略”“曲。地按鈕vbYesNoCancel3顯示“是"(Yes)、 “否” (No)及“取消” (Cancel)夜翻vbYesNo4顯示“是" (Yes)及“否” (No)按鈕vbRetryCancel5顯示“螢試”(Reiry)及"W (Cancel)vbCritical16品才; Critical Message 圖標(biāo)vbQuestion32Warning Query 圖標(biāo) 3vbExclamatio
10、n48程方, Warning Message 圖猱vblnformation64Information Message_vbDefaultButlonl0以第一個(gè)按鈕為默認(rèn)按鈕中vbDefaultButton2256以第二個(gè)按鈕為默認(rèn)按鈕vbDefaultButton3512以第三個(gè)按鈕為默認(rèn)按鈕vbDefaultButton4768以第四個(gè)按鈕為默認(rèn)按鈕vbApplicationModal0進(jìn)入該消息框,當(dāng)前應(yīng)用程序暫停vbSystemModal4096進(jìn)入該消息框,所有應(yīng)用程序暫停表21中的數(shù)值(或常數(shù))可分為四組,其作用分別為: 第一組值105為確定對(duì)話框中按鈕的類型與數(shù)量。 第二組值1
11、16, 32, 48, 64另 確定對(duì)話框中顯示的圖標(biāo). 第三組值10,256, 512另設(shè)置對(duì)話框的默認(rèn)活動(dòng)按鈕。 第四組值10, 4096力確定消息框的強(qiáng)制響應(yīng)性。buwons參數(shù)由上而4組數(shù)值組成,其組成方法是:從每一類中選擇一個(gè)值,把這些數(shù) 值組合起來(lái),就是buttons參數(shù)的值。3 .案例說(shuō)明本例的主要功能是當(dāng)用戶激活工作表位時(shí),Exc0顯示激活的信息。4 .編寫代碼龍人VBE,在代碼窗口左上方的對(duì)象列表中選擇,No也球如圖2A所示。C1)在代碼窗口右上方的事件列表中選擇"Activate工如圖25所示。圖2.4對(duì)象列表圖2.5事件列表1763;在上而生成的事件過(guò)程中輸入以
12、下代碼:Private Sub Worksheet_Activate()MsgBox (“你激活了 Sheetl工作表!。End Sub運(yùn)行結(jié)果打開工作薄,然后選擇Sheet'工作表,結(jié)果如圖26所示.圖2.6顯示的提示信息第2面VBA語(yǔ)法基礎(chǔ)6.程序分析在本例中,使用的是淮ox函數(shù)的最簡(jiǎn)單形式,也就是直接使用Ms*ox函數(shù)顯示 一個(gè)字符串信息。在實(shí)際開發(fā)中,用戶可以設(shè)置各參數(shù),得到不同的顯示結(jié)果。2.2選擇結(jié)構(gòu)Excel VBA中,除了常見的順序結(jié)構(gòu)之外,還有一種常見結(jié)構(gòu):選擇結(jié)構(gòu)。選擇結(jié) 構(gòu)的程序?qū)⒏鶕?jù)給定的條件選擇執(zhí)行后續(xù)的代碼。選擇結(jié)構(gòu)在日常生活中應(yīng)用十分廣泛, 在本小節(jié)將結(jié)合
13、具體的例子來(lái)講解如何使用選擇結(jié)構(gòu)。案例11判斷優(yōu)秀員工1 .功能說(shuō)明在實(shí)際開發(fā)中,當(dāng)用戶只需要進(jìn)行一種情況的判斷時(shí),最方便的方法是It機(jī)取語(yǔ) 句。X后面的語(yǔ)句就是判斷的條件,T”en后而的語(yǔ)句是需要執(zhí)行的操作。2 .語(yǔ)法說(shuō)明在Excel VBA的 使用X.KAtn語(yǔ)句可有條件地執(zhí)行語(yǔ)句。其語(yǔ)法格式如下:If邏輯表達(dá)式Then語(yǔ)句1語(yǔ)句1 語(yǔ)句nEnd If邏輯表達(dá)式可以是計(jì)算數(shù)值的表達(dá)式,VBA將為0看作為False,而非零數(shù)值都被看 推True.該語(yǔ)句的執(zhí)行順序是:當(dāng)邏輯表達(dá)式的值是Nue,媯儀行僅于Then與End If之 間的語(yǔ)句:當(dāng)邏輯表達(dá)式的值是£叱,則不執(zhí)行45與R2N之
14、間的語(yǔ)句,直接跳出循 環(huán)結(jié)構(gòu),其流程圖如圖2:!所示。邏輯表達(dá)式語(yǔ)句疔列If. Tlien結(jié)構(gòu)還有單行結(jié)構(gòu)條件語(yǔ)句。其語(yǔ)法格式如下:If邏輯表達(dá)式Then語(yǔ)句該語(yǔ)茍的功能為:當(dāng)邏輯表達(dá)式的值是則執(zhí)行fen后的語(yǔ)句:當(dāng)邏輯表達(dá)式 的值是False,則不執(zhí)Zr Then后的語(yǔ)句“3 .案例說(shuō)明某公司統(tǒng)計(jì)了員工上個(gè)月的銷量,根據(jù)銷量數(shù)值,公司制定銷量數(shù)值大于35b的員工 為優(yōu)秀員工。對(duì)于優(yōu)秀員工將其對(duì)應(yīng)的單元格標(biāo)紅,原始數(shù)據(jù)如圖23所示。圖2.8原始數(shù)據(jù)4 .編寫代碼判斷優(yōu)秀員工的代碼如下:Sub ShowExcelODim i As IntegerFor i = 2To 10If Sheets(1
15、).Cells(i, 2).Value > 350 ThenCells(i, 2).lnterior.Colorlndex = 3End IfNextEnd Sub5 .運(yùn)行結(jié)果打開工作薄,然后運(yùn)行程序代碼,結(jié)果如圖29所示。6 .程序分析從上而案例的結(jié)果中可以看出,當(dāng)程序處理的只有一個(gè)條件時(shí),紡例.Then語(yǔ)句可 以很便利的解決問(wèn)題。案例12根據(jù)編號(hào)分組1.功能說(shuō)明當(dāng)用戶在實(shí)際開發(fā)時(shí),經(jīng)常需要進(jìn)行多條件判斷。例如,當(dāng)滿足條件'時(shí),執(zhí)行第一 種操作;當(dāng)不滿足條件1時(shí),執(zhí)行另外一種操作。當(dāng)用戶需要編寫這些類型的代碼時(shí),前 而案例中的It - Then語(yǔ)句將無(wú)法滿足,用戶需要使用X.
16、 Then . Else語(yǔ)句。2.語(yǔ)法 說(shuō)明企Excel VBA中,用戶可以使用X. Then . Else語(yǔ)句,根據(jù)條件是否成立分別執(zhí)行 兩段不同的代碼,其語(yǔ)法格式如下:If邏輯表達(dá)式Then語(yǔ)句序列1日se語(yǔ)句序列2End If該語(yǔ)句的執(zhí)行過(guò)程是:當(dāng)邏輯表達(dá)式的值是、皿時(shí),將執(zhí)行“語(yǔ)句序列中的各條 語(yǔ)句:當(dāng)“邏輯表達(dá)式”的值為Fkse時(shí),就執(zhí)行“語(yǔ)句序列2”中的各條語(yǔ)句,其流程圖 如圖20所示。圖2.10 If Then Else3 .案例說(shuō)明淵耕表達(dá)式某公司統(tǒng)計(jì)了員工上個(gè)月的銷量,公司需要根據(jù)員工編號(hào)判斷員工的組別。當(dāng)然 偶數(shù)的時(shí)候,員工屬于女組:當(dāng)編號(hào)是奇數(shù)時(shí),員工屬于男組,原始數(shù)據(jù)如
17、圖工所示,1F130ABcD Hi員工編號(hào)猷堂阻我21111693112271113367114322115364116418811712391133961011940311*4 4=0ii She叫/臥哩24 C Hi'Jiai IC$帆一056 g :J_f井x氏公m壽豐女鴻”III圖2.11原始數(shù)據(jù):/號(hào)令總”mR -語(yǔ)句序列1真4 .編寫代碼分組的程序代碼如下:Sub ShowTeam()Dim i As IntegerFor i = 2To 10If Sheets(1).Cells(i, 1).Value Mod 2 ThenCells(i, 3).Value = "
18、;男組”日seCells。, 3).Value = "女組”End IfNextEnd Sub5 .運(yùn)行結(jié)果打開工作薄,運(yùn)行程序代碼,得到的結(jié)果如圖2.2所示。己外會(huì)超在mh - = X9開隹茬)g公m s» & _ T X1F13:CD&1民工3號(hào)劭塞阻我2m169女姐3112271碧姐.4113367女組5114322男組J6115364女組T116418碧姐8117123文蛆9118396男組1014 4119403女組“ Shwet1 Sheet 2SheFH正玲舊0型1飛,kJ,鼎圖2.12運(yùn)行結(jié)果6 .程序分析從上面的典型例子中可以看出,當(dāng)在實(shí)際
19、情況中需要根據(jù)某條件執(zhí)行兩種不同的操作 時(shí),可以僅用If.Then . Else語(yǔ)句便利的完成任務(wù)“案例13計(jì)算消費(fèi)金額1 .功能說(shuō)明在實(shí)際開發(fā)中,用戶可能需要處理多條件問(wèn)題。例如,某公司根據(jù)多個(gè)銷量,將折扣 分為多個(gè)檔次。在沖算銷售金額的時(shí)候,需要判斷具體銷售屬于哪個(gè)檔次,然后根據(jù)該檔 次的折扣值,計(jì)算銷售金額。這個(gè)時(shí)候,用戶可以使用Select Case譜仇2 .語(yǔ)法說(shuō)明在Excel VBA中,Select Case結(jié)構(gòu)的語(yǔ)法格式如下:Select Case測(cè)試表達(dá)式Case表達(dá)式列表1語(yǔ)句序列1Case表達(dá)式列表2語(yǔ)句序列2Case Else語(yǔ)句序列nEnd Select根據(jù)上面的程序結(jié)
20、構(gòu),代碼首先計(jì)算”測(cè)試表達(dá)式”的值,然后將表達(dá)式的值與結(jié)構(gòu) 中的Case的值進(jìn)行比較,如果相等,就執(zhí)行與該C 語(yǔ)句下面的語(yǔ)句塊,執(zhí)行完畢再跳轉(zhuǎn)到End Select語(yǔ)句后執(zhí)行,其流程圖如我!23所示.圖2.13 Select Case游包漪拴圖於Select Case結(jié)構(gòu)中,“測(cè)試表達(dá)式”通常是數(shù)值或字符型的變量。”表達(dá)式列表”可 以是一個(gè)或幾個(gè)值的列表,如果在列表中有多個(gè)值,需要用逗號(hào)將各值分開.表達(dá)式列表 可以分下而幾種情況: 表達(dá)式:表示具體的取值。例:Case 5,8.9。 表達(dá)式AT。表達(dá)式B:表示數(shù)據(jù)范圍。例,Case8、o2表示812之間的值, X比較運(yùn)算符表達(dá)式:表示范圍。例,
21、Casels>45表才歷有才于45的值。 以上三種情況的混合。例,Case 8 Toi 2,17/s>35.3 .案例說(shuō)明某銷售公司根據(jù)商品的銷量實(shí)行不同的折扣,公司需要根據(jù)銷量和價(jià)格,計(jì)算其銷量 的總額,其中原始數(shù)據(jù)如圖工4所示。口,- c ; .一,二i廣. M.- = xRs «£>有公己3J » r福田并,七-f x=4Al,卜BCD1價(jià)格Jfefi總祗2315100201504530200352506 ?8 g203001151502410030200102540014 <« Shdetl Sheet 2 / Stiee
22、t-BII » BHJ菽 £3U 出 PI 口 | 1QQ%a,"圖2.14原始數(shù)據(jù)4 .編寫代碼計(jì)算銷量金額的代碼如下:Sub GetlncomeODim IntSale As IntegerDim discount As SingleDim SingleMoney As SingleDim i As IntegerDim IntPric As IntegerFor i = 2To 10IntPric = Cells(it 1). ValueIntSale = Cells(i, 2).ValueSelect Case IntSaleCase Is <= 1
23、00 discount = 0.95Case Is <= 150 discount = 0.85Case Is <= 200 discount = 0.7Case Is <= 300 discount = 0.65Case Else discount = 0.6 End SelectSingleMoney = IntSale # IntPric * discountCells(i, 3).Value = SingleMoneyNext iEnd Sub5 .運(yùn)行結(jié)果打開工作薄,運(yùn)行程序代碼,得到的結(jié)果如圖2.5所示。r.0七開士七小TG公三&式言華感 " -
24、 r XC£12一A -主A6CD' E1你格蛆送總酒21510014253201502550一43020042005352505687.562030039007151501912.58241002280g30200420010254006000h Stieetl , 仇 2SMtii 佃 0 硯工0Q% 13=如=AU4圖2.15計(jì)算所銷隹金額6 .程序分析用戶可以使用TJ.T”enElseif結(jié)構(gòu)來(lái)重新編寫上面的案例,然后和Se«ct Case結(jié) 構(gòu)進(jìn)行比較,可以發(fā)現(xiàn)S0ectCase結(jié)構(gòu)在處理多條件的情況下,要簡(jiǎn)潔很多。2.3循環(huán)結(jié)構(gòu)初移物是Excel VBA
25、中經(jīng)常使用的一種程序結(jié)構(gòu),當(dāng)用戶需要使用程序代碼反復(fù)完 成同一任務(wù)的時(shí)候,則需要使用循環(huán)結(jié)構(gòu).在本小節(jié)中,將結(jié)合具體例子來(lái)講解如何使用 循環(huán)結(jié)構(gòu)。案例14計(jì)算自然數(shù)之和1 .功能說(shuō)明當(dāng)用戶在進(jìn)行循環(huán)運(yùn)算的時(shí)候,有忖可能了解具體循環(huán)的次數(shù)。這個(gè)時(shí)候可以使用 For.Next循環(huán)語(yǔ)句依次完成循環(huán)運(yùn)算。其中,最典型的例子就是計(jì)算自然數(shù)的總和。當(dāng) 用戶需要計(jì)算自然數(shù)之和時(shí),循環(huán)次序已經(jīng)由自然數(shù)的大小決定。2 .語(yǔ)法說(shuō)明/Excel VBA的 如果知道循環(huán)的次數(shù),可以使用Eoj.Neg循環(huán)語(yǔ)句來(lái)執(zhí)行循環(huán)。 Fo,循環(huán)的語(yǔ)法如下:For循環(huán)變量=初始值To終值Step步長(zhǎng)值語(yǔ)句序列1Exit For語(yǔ)句序
26、列2Next 循環(huán)變量在上面的結(jié)構(gòu)中,循環(huán)變量控制循環(huán),每重復(fù)一次循環(huán)之后,循環(huán)變量的值將以步長(zhǎng) 值相加。步長(zhǎng)的默認(rèn)數(shù)值是1,并且可正可負(fù)。如果步長(zhǎng)值為正,則初始值必須小于等于 終值,才執(zhí)行循環(huán)體,如果步長(zhǎng)值為負(fù),則初始值必須大于等于終值,才能執(zhí)行循環(huán)體. ForNext循環(huán)結(jié)構(gòu)的流程圖如圖工6所示。圖2.16 Foi .Next 游程圖3 .案例說(shuō)明根據(jù)循環(huán)結(jié)構(gòu)計(jì)算1+2+3+1000的數(shù)值。4 .編寫代碼計(jì)算自然數(shù)之和程序代碼如下:Sub GetSumsODim clock As IntegerDim sum As LongDim counter As Integerclock = 1su
27、m = 0counter = 1For counter = 1 To 1000 sum = sum + clock clock = clock + 1NextMsgBox M1+2+3+.+1000 = " & sum, vbOKOnly, ”計(jì)算自然數(shù)之和” End Sub5 .運(yùn)行結(jié)果運(yùn)行程序代碼,結(jié)果如圖27所示。圖Z17運(yùn)行結(jié)果6 .程序分析從上面的結(jié)果中可以看出,由于用戶計(jì)算的是自然數(shù)之和。所以,在代碼中不需要設(shè) 置參數(shù)Step的數(shù)值。案例15為單元格賦值1 .功能說(shuō)明在Excel中,由一種特殊的循環(huán)。在其循環(huán)結(jié)構(gòu)中,其循環(huán)運(yùn)算的范圍是一個(gè)區(qū)域。 例如,用戶需要在某
28、工作表的單元格區(qū)域中進(jìn)行循環(huán)。這個(gè)時(shí)候,用戶可以使用For Each . Next循環(huán)語(yǔ)句.2 .語(yǔ)法說(shuō)明在Excel VBA中,For Each . Next循環(huán)語(yǔ)句的語(yǔ)法格式如F:For Each元素In對(duì)象集合語(yǔ)句序列1Exit For語(yǔ)句序列2Next該循環(huán)結(jié)構(gòu)可在對(duì)象集合每個(gè)元素中執(zhí)行循環(huán)體。集合中必須至少有一個(gè)元素,才會(huì) 進(jìn)入For Each循環(huán)體。循環(huán)結(jié)構(gòu)先對(duì)“對(duì)象集合”中的第一個(gè)元素執(zhí)行循環(huán)語(yǔ)句,然后對(duì) “對(duì)藤集合”其他的元素執(zhí)行循環(huán)語(yǔ)句,當(dāng)“對(duì)象集合”中的所有元素都執(zhí)行結(jié)束,會(huì)退 出循環(huán)。在循環(huán)體中,用戶可以設(shè)置多個(gè)ExttEot語(yǔ)句,退出循環(huán)。3 .案例說(shuō)明本例的主要功能是
29、利用循環(huán)結(jié)構(gòu)為單元格區(qū)域蹴值。4 .編寫代碼為單元格賦值的程序代碼如下:Sub GetValuesODim counter As IntegerDim rng As RangeWorksheets(Msheet1 Activate For Each rng In Range(HAl:ElOn)rng.Value = counter counter = counter + 1NextEnd Sub5 .運(yùn)行結(jié)果運(yùn)行程序代碼,結(jié)果如圖所示。-5為8元格- Mkcosof. - 3XK:公三1尊正I+泛??傞_力忙TT & - rc1HL9EABCDE一i01234n2567893101112B14一415161713195202122232462526272829r7303132333483536373839g4041424344IC454647484911:,n Sheet./
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工單位見證取樣制度
- 科技背景下家庭教育的創(chuàng)新與實(shí)踐
- 小區(qū)工廠醫(yī)院智能化弱電系統(tǒng)設(shè)計(jì)解決方案課件
- DB3715T 70-2025楝樹栽培技術(shù)規(guī)程
- 三人創(chuàng)業(yè)合作經(jīng)營(yíng)合同
- 專業(yè)市場(chǎng)店鋪?zhàn)赓U合同模板
- 二手挖機(jī)轉(zhuǎn)讓合同范本
- 個(gè)人借款與擔(dān)保合同示范文本
- 二手房銷售獨(dú)家委托合同
- 中小企業(yè)流動(dòng)資金循環(huán)貸款合同模板
- NB-T 10609-2021 水電工程攔漂排設(shè)計(jì)規(guī)范
- 2023年全國(guó)4月高等教育自學(xué)考試管理學(xué)原理00054試題及答案新編
- 邵陽(yáng)市職工勞動(dòng)能力鑒定表
- 稀土配合物和量子點(diǎn)共摻雜構(gòu)筑發(fā)光軟材料及其熒光性能研究
- JJG 921-2021環(huán)境振動(dòng)分析儀
- 中藥炮制學(xué)-第五、六章
- 中國(guó)風(fēng)軍令狀誓師大會(huì)PPT模板
- 小兒高熱驚厥精品課件
- 2022年電拖實(shí)驗(yàn)報(bào)告伍宏淳
- 豐田汽車戰(zhàn)略規(guī)劃與戰(zhàn)略管理體系研究(2021)
- 即興口語(yǔ)(姜燕)-課件-即興口語(yǔ)第一章PPT-中國(guó)傳媒大學(xué)
評(píng)論
0/150
提交評(píng)論