VBA程序設(shè)計(jì)基礎(chǔ)_第1頁(yè)
VBA程序設(shè)計(jì)基礎(chǔ)_第2頁(yè)
VBA程序設(shè)計(jì)基礎(chǔ)_第3頁(yè)
VBA程序設(shè)計(jì)基礎(chǔ)_第4頁(yè)
VBA程序設(shè)計(jì)基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、-作者xxxx-日期xxxxVBA程序設(shè)計(jì)基礎(chǔ)【精品文檔】第九章程序設(shè)計(jì)基礎(chǔ)教學(xué)目標(biāo):l 理解什么是程序l 掌握程序設(shè)計(jì)的基本方法l 編寫并調(diào)試簡(jiǎn)單的VBA應(yīng)用程序l 編寫簡(jiǎn)單的事件驅(qū)動(dòng)程序l 會(huì)在VBA應(yīng)用程序中訪問(wèn)數(shù)據(jù)庫(kù)教學(xué)過(guò)程:一、 程序設(shè)計(jì)概述做一件事,計(jì)算機(jī)可以把它分解為一系列的基本操作步驟,通過(guò)程序設(shè)計(jì)語(yǔ)言的基本語(yǔ)句來(lái)完成,這就是程序。 程序設(shè)計(jì)方法主要有兩種:面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)方法和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。前面所學(xué)的窗體對(duì)象設(shè)計(jì)就是一種面向?qū)ο蟮脑O(shè)計(jì)方法。在Access中編寫程序使用的語(yǔ)言是Visual Basic for Application,簡(jiǎn)單VBA。首先看一下VB

2、A編寫的幾個(gè)簡(jiǎn)單程序。例9-1 在窗體上放置一個(gè)命令按鈕和一個(gè)文本框,單擊命令按鈕后在文本框中顯示“VBA程序設(shè)計(jì)”步驟如下:1、打開(kāi)數(shù)據(jù)庫(kù),切換到“窗體”對(duì)象下,雙擊“在設(shè)計(jì)視圖中創(chuàng)建窗體”,單擊此按鈕,輸入程序。2、添加文本框,在對(duì)應(yīng)的屬性窗口“全部”選項(xiàng)卡的第一行設(shè)置名稱為“文本1”,添加命令按鈕,名稱為“命令0”3、打開(kāi)“按鈕”的屬性窗口,在“事件”選項(xiàng)卡下的“單擊”欄選“事件過(guò)程”,單擊后面的按鈕,進(jìn)入編輯窗口:4、在編輯窗口中輸入如下程序:(其實(shí)窗口中已有,所以我們只要在中間添加一句Private Sub 命令0_Click()文本1.Value=“VBA程序設(shè)計(jì)”說(shuō)明:1、 程序

3、的開(kāi)頭“Private Sub”和結(jié)束“End Sub”是一個(gè)固定搭配,表示這是一個(gè)過(guò)程,程序中的“命令0_Click( )”表示這個(gè)程序在“命令0”按鈕被單擊時(shí)執(zhí)行。2、 在編輯窗口已有程序的開(kāi)頭和結(jié)尾,所以我們只要輸入中間的一句:文本1.value=“VBA程序設(shè)計(jì)”3、 注意程序中引用的“命令0”,“文本1”一定要和窗體中的按鈕、文本框名稱一致。End Sub5、關(guān)閉程序編輯窗口,切換到窗體視圖,則單擊命令按鈕后,“VBA程序設(shè)計(jì)”即顯示在文本框中。思考 在上面的窗體中再添加一個(gè)按鈕,單擊則清除文本框中顯示的文本,應(yīng)該怎樣操作?例9-2 在窗體中有一個(gè)命令按鈕和兩個(gè)文本框,用戶在第一個(gè)文

4、本框中輸入一個(gè)正整數(shù),當(dāng)單擊該按鈕時(shí)計(jì)算出這個(gè)正整數(shù)的階乘,并在第二個(gè)文本框中顯示計(jì)算結(jié)果。步驟:1、 新建一個(gè)窗體,拖入兩個(gè)文本框和一個(gè)命令按鈕,名稱為文本1、文本2、命令0(這三個(gè)控件名稱后面程序中要引用,所以一定要命名?。?、 選中按鈕,打開(kāi)其屬性窗口,在“事件”選項(xiàng)下的“單擊”一欄,選“事件過(guò)程”,單擊后面的按鈕,輸入如下程序:說(shuō)明:1、 程序中變量在使用前要先定義,這里計(jì)算階乘,用到的只能是整數(shù),所以定義a、b、c為整型變量。(見(jiàn)中間程序部分的第一句:Dim a As Integer)2、 單引號(hào)后面的是程序的注釋語(yǔ)句,只起說(shuō)明的作用,程序并不執(zhí)行它。不輸入這些語(yǔ)句,程序照樣正常運(yùn)行

5、。(見(jiàn)綠色部分)3、 輸入程序時(shí)可以用小寫字母輸入單詞,但每一個(gè)關(guān)鍵詞的第一個(gè)字母計(jì)算機(jī)會(huì)自動(dòng)變成大寫。(見(jiàn)程序中藍(lán)色部分)4、 程序一般一句一行,也可多個(gè)句子寫在一行,中間用冒號(hào)隔開(kāi);如果一句太長(zhǎng),需要分成多行,可在上一行的最后加下劃線“_”,系統(tǒng)就會(huì)把上下兩行連在一起做為一個(gè)語(yǔ)句。3、關(guān)閉程序編輯窗口,切換到窗體視圖,我們輸入5,單擊“計(jì)算”按鈕,則會(huì)顯示120,(實(shí)際上,5!=12345,計(jì)算結(jié)果是120)二、 程序的輸入輸入出語(yǔ)句(1)InputBox 函數(shù)格式:InputBox 字符串1,字符串2,字符串3功能:顯示一個(gè)輸入對(duì)話框,等待用戶輸入信息或按下按鈕。在按鈕事件發(fā)生后返回鍵盤

6、輸入到文本框中的內(nèi)容,返回值的類型為文本類型,說(shuō)明:對(duì)話框中的提示信息是字符串1,對(duì)話框的標(biāo)題欄是字符串2,字符串3是輸入對(duì)話框中的默認(rèn)值。后兩個(gè)字符串是可選項(xiàng),可不選。例9-3 在窗體的命令按鈕中分別加入以下代碼,單擊按鈕后即可看出輸入對(duì)話框的不同。Private Sub Command0_Click()InputBox 請(qǐng)輸入學(xué)號(hào), 學(xué)號(hào)輸入框, 2009End Sub改成下面程序后的輸入對(duì)話框:Private Sub Command0_Click()InputBox 請(qǐng)輸入學(xué)號(hào), 學(xué)號(hào)輸入框End Sub改成下面程序后的輸入對(duì)話框:Private Sub Command0_Click()

7、InputBox 請(qǐng)輸入學(xué)號(hào)End Sub(2)MsgBox函數(shù)格式:MsgBox字符串1,按鈕參數(shù),字符串2功能:出現(xiàn)一個(gè)消息框,字符串1為消息框中的提示信息,按鈕參數(shù)則決定了消息框中按鈕的類型(見(jiàn)下面按鈕參數(shù)表),字符串2為消息框的標(biāo)題欄上信息。按鈕參數(shù)表:常數(shù)值按鈕類型vbOKOnly0只顯示OK按鈕vbOKCancel1顯示OK及Cancel按鈕vbYesNoCancel3顯示Yes、No、Cancel按鈕vbQuestion32顯示W(wǎng)arning Query圖標(biāo)vbExclamation48顯示W(wǎng)aring Message圖標(biāo)vbInformation64顯示Information

8、Message圖標(biāo)vbDefaultButton10第一個(gè)按鈕是缺省值vbDefaultButton2256第二個(gè)按鈕是缺省值vbDefaultButton3512第三個(gè)按鈕是缺省值例9-4 在窗體上添加一個(gè)命令按鈕,當(dāng)單擊該按鈕后,顯示一個(gè)對(duì)話框:(1)提示消息為“您確定要退出嗎?”。(2)包含“確定”和“取消”兩個(gè)命令按鈕以及一個(gè)詢問(wèn)圖標(biāo),默認(rèn)選擇“確定”按鈕,(3)對(duì)話框的標(biāo)題欄為“確認(rèn)退出”分析:生成對(duì)話框需要用MsgBox函數(shù),包含“確定”和“取消”按鈕,對(duì)應(yīng)參數(shù)為1(見(jiàn)上表);包含一個(gè)詢問(wèn)圖標(biāo),對(duì)應(yīng)參數(shù)為32;默認(rèn)選擇是“確定”按鈕(這里的第一個(gè)就是“確定”按鈕),對(duì)應(yīng)參數(shù)是0,根

9、據(jù)題目要求對(duì)應(yīng)的語(yǔ)句應(yīng)為:MsgBox“您確定要退出嗎?”,1+32+0,“確認(rèn)退出”步驟:1、 新建一個(gè)窗體,添加一個(gè)命令按鈕,2、 在命令按鈕的屬性窗口中切換到“事件”選項(xiàng)下,在“單擊”一欄中選“事件過(guò)程”,單擊這一欄后面的按鈕,出現(xiàn)VBA編程窗口,3、 在程序開(kāi)頭和結(jié)尾之間添加一句:MsgBox“您確定要退出嗎?”,1+32+0,“確認(rèn)退出”,見(jiàn)下圖:4、 切換到窗體視圖,單擊命令按鈕,彈出一個(gè)消息框,如圖:說(shuō)明:1、 使用參數(shù)進(jìn)行組合時(shí)不能互相矛盾,例如不能同時(shí)顯示“確定”“取消”兩個(gè)按鈕和“是”、“否”、“取消”三個(gè)按鈕。2、 上面的組合參數(shù)可以求和后表示,也可用按鈕參數(shù)表中對(duì)應(yīng)的常

10、數(shù)表示,下面幾種形式均可:MsgBox“您確定要退出嗎?”,1+32+0,“確認(rèn)退出”MsgBox“您確定要退出嗎?”,33,“確認(rèn)退出”MsgBox“您確定要退出嗎?”,vbOKCancel+vbQuestion+vbDefaultButton1,“確認(rèn)退出”3、 當(dāng)用戶點(diǎn)擊了不同的按鈕,我們可以根據(jù)按鈕的返回值來(lái)判定用戶選擇了哪個(gè)按鈕,按鈕返回值如下表:MsgBox返回值常數(shù)值選擇按鈕vbOK1選擇了OKvbCancel2選擇了CancelvbYes6選擇了YesvbNo7選擇了NO例9-5 在窗體上添加一個(gè)命令按鈕,當(dāng)單擊該按鈕后接受用戶輸入的三角形三邊長(zhǎng),并求出周長(zhǎng)后輸出步驟:1、 新

11、建一個(gè)窗體,添加一個(gè)命令按鈕command0Private Sub Command0_Click()定義a,b,c,s為單精度變量,a,b,c為三邊長(zhǎng),s為周長(zhǎng)Dim a As Single, b As Single, c As Single, s As Single利用輸入對(duì)話框接受鍵盤輸入的值,并用Val()函數(shù)轉(zhuǎn)把字符串轉(zhuǎn)換成數(shù)值a = Val(InputBox(請(qǐng)輸入三角形的第一個(gè)邊長(zhǎng):)b = Val(InputBox(請(qǐng)輸入三角形的第二個(gè)邊長(zhǎng):)c = Val(InputBox(請(qǐng)輸入三角形的第三個(gè)邊長(zhǎng):)s = a + b + cMsgBox 三角形的周長(zhǎng)是: & sEnd Su

12、b2、 在命令按鈕的屬性窗口中為其添加代碼:如圖3、 切換到窗體視圖,單擊命令按鈕,在彈出的對(duì)話框中依次輸入三個(gè)值,例如3、4、5則彈出一個(gè)消息框,顯示三邊長(zhǎng)的結(jié)果: 三、 賦值語(yǔ)句格式:變量名=表達(dá)式功能:把右邊表達(dá)式的值給左邊的變量。例如x=2+1,x=x+1說(shuō)明:1、 變量要先定義才能使用2、 賦值號(hào)兩邊的數(shù)值必須兼容,即數(shù)據(jù)類型盡量一致。否則容易出錯(cuò)例如:Dim x as Integer,y as Single,z as String定義x為整數(shù),y為單精度數(shù),z為文本字符XY=4Z=”ACCESS”第二句x定義為整數(shù),卻給了個(gè)小數(shù)3.5,此時(shí)x會(huì)取4,第三句y是單精度數(shù),給了整數(shù)4,

13、但系統(tǒng)可以轉(zhuǎn)換成4.000再給變量y,所以是合法的。第四句z是字符變量,所以等式右邊只能賦值一個(gè)字符串。3、 等號(hào)左邊只能有一個(gè)變量,右邊可以是含這個(gè)變量的表達(dá)式,例如x=x+1正確,但x+1=x就不正確了。4、 賦值號(hào)右邊的計(jì)算結(jié)果必須在左邊變量的表示范圍之內(nèi),否則系統(tǒng)會(huì)提示出錯(cuò),例如:Dim x as Integer 定義x為整型變量x=40000整型變量x最大只能取值32767,所以40000就超出了整型數(shù)據(jù)表示的最大值 ,程序運(yùn)行到這一句時(shí),系統(tǒng)會(huì)提示出錯(cuò)。5、 變量被兩次賦值 ,則新值沖掉舊值,例如x=2x=3x=x+2x=?例9-6 在窗體上添加一個(gè)命令按鈕,當(dāng)單擊該按鈕后接受用戶

14、輸入的長(zhǎng)方形的長(zhǎng)和寬,計(jì)算其面積并輸出計(jì)算結(jié)果。步驟:1、新建窗體,并在上面添加一個(gè)命令按鈕,按鈕名稱為“命令0”,在按鈕上添加代碼如下:Private Sub 命令0_Click()定義變量a,b,s為單精度變量,a,b表示長(zhǎng)方形的長(zhǎng)和寬,S表示面積Dim a As Single, b As Single, s As Single通過(guò)InputBox函數(shù)輸入邊長(zhǎng),同時(shí)將文本型數(shù)據(jù)轉(zhuǎn)換成數(shù)值型a = Val(InputBox(請(qǐng)輸入長(zhǎng)方形的第一個(gè)邊長(zhǎng):)b = Val(InputBox(請(qǐng)輸入長(zhǎng)方形的第二個(gè)邊長(zhǎng):)s = a * bMsgBox 長(zhǎng)方形面積為: & sEnd Sub2、切換到窗

15、體視圖,單擊命令按鈕,會(huì)出現(xiàn)一個(gè)輸入框,要求你輸入長(zhǎng)方形的兩個(gè)邊長(zhǎng),輸入邊長(zhǎng)后,單擊“確定”按鈕,即彈出一個(gè)消息框,顯示長(zhǎng)方形的面積。注意:輸入程序代碼時(shí),要在英文半角下輸入,各關(guān)鍵詞之間要有空格(“英文半角”輸入狀態(tài)下的空格!)四、順序結(jié)構(gòu)在高級(jí)程序設(shè)計(jì)語(yǔ)言中,其語(yǔ)句執(zhí)行都有一定的先后順序,總體可以分為順序結(jié)構(gòu)語(yǔ)句(按語(yǔ)句的先后順序執(zhí)行)、條件分支語(yǔ)句(根據(jù)條件的成立來(lái)確定執(zhí)行哪一個(gè)分支)、循環(huán)語(yǔ)句(某個(gè)條件成立時(shí)反復(fù)執(zhí)行某一段程序)。順序結(jié)構(gòu)是最簡(jiǎn)單的一種結(jié)構(gòu),這種結(jié)構(gòu)讓語(yǔ)句按先后順序執(zhí)行,以完成簡(jiǎn)單的功能。A=2B=3T=A把A的值放到T中,則T=2A=B把B的值放到A中,則A=3B=T

16、把T的值給B,則B=2例9-7 在窗體上放一個(gè)命令按鈕和兩個(gè)文本框,在兩個(gè)文本框中分別輸入兩個(gè)不同的值,單擊命令按鈕后交換這兩個(gè)文本框中的數(shù)據(jù)。分析:假如a=2,b=3, 利用賦值語(yǔ)句總是把等號(hào)右邊值給左邊的特性,借助中間變量,可以讓a,b的值互換。步驟:1、 新建一個(gè)窗體,窗體中放兩個(gè)文本框和一個(gè)命令按鈕,名稱分別是“文本1”、“文本2”、“命令0”,(在屬性窗體設(shè)置這些控件的名稱,在代碼程序中引用)Private Sub 命令0_Click()Dim a As String, b As String, t As String 定義a,b,t為文本變量t = aa = bb = t文本1.V

17、alue = a文本2.Value = bEnd Sub2、 選中命令按鈕,在屬性窗口中添加這個(gè)按鈕的代碼如下:3、 切換到窗體視圖,在文本框中輸入兩個(gè)值,例如2、3,單擊命令按鈕,可看到文本框中兩個(gè)數(shù)實(shí)現(xiàn)了交換。例9-8在窗體上放一個(gè)命令按鈕和兩個(gè)文本框,第一個(gè)文本框中輸入用分鐘表示的時(shí)間,單擊命令按鈕則把這個(gè)時(shí)間轉(zhuǎn)換成以小時(shí)和分鐘表示的時(shí)間。步驟:1、 新建一個(gè)窗體,放一個(gè)命令按鈕和兩個(gè)文本框,定義按鈕和文本框的名稱為命令0、文本1、文本22、 選中命令按鈕,在屬性窗口中切換到“事件”選項(xiàng)下,在“單擊”欄選“事件過(guò)程”,單擊這一欄后面的按鈕,輸入以下代碼:Private Sub 命令0_C

18、lick()Const a As Integer = 60 聲明a為常量60Dim x As Integer, y As Integer, z As Integer 定義x,y,z為整型變量x = 文本1.Value 輸入的分鐘數(shù)y = x a xa表示“x整除a”的運(yùn)算,和x/a不同。z = x Mod a x mod a表示求“x除a的余數(shù)”文本2.Value = y & 小時(shí) & z & 分鐘注意等式右邊用用空格分開(kāi)各個(gè)量。End Sub3、切換到窗體視圖下,輸入一個(gè)分鐘數(shù)例如:100,單擊命令按鈕就可轉(zhuǎn)換成1小時(shí)40分鐘。說(shuō)明:1、 常量的聲明:常量是一種特殊的量,它的值設(shè)置后就不能更

19、改或賦于新值,可以在代碼中的任何地方使用常量代替實(shí)際的值,對(duì)于程序中經(jīng)常出現(xiàn)的常數(shù)值且難以記憶無(wú)明確意義的數(shù)值,使用常量聲明可增加代碼的可讀性和可維護(hù)性。格式:Const 常量名as 類型名=表達(dá)式2、本程序中用到幾種運(yùn)算,常見(jiàn)的運(yùn)算見(jiàn)下表:符號(hào)描述示例加減乘4*3=12除整除72=3(只取商的整數(shù)部分)Mod求余9Mod6=3求冪103=1000五、分支結(jié)構(gòu)分支結(jié)構(gòu)語(yǔ)句有兩種:if 語(yǔ)句和Select Case語(yǔ)句(1) if 語(yǔ)句單分支:格式:if 條件表達(dá)式 then執(zhí)行語(yǔ)句1Else 執(zhí)行語(yǔ)句2End if功能:條件表達(dá)式成立就執(zhí)行語(yǔ)句1,不成立就執(zhí)行語(yǔ)句2說(shuō)明:條件語(yǔ)句以if 開(kāi)頭,

20、以End if 結(jié)束,if和End if要成對(duì)出現(xiàn)。例9-9 在窗體上放一個(gè)命令按鈕和3個(gè)文本框,在前兩個(gè)文本框中輸入兩個(gè)整數(shù),單擊命令按鈕比較這兩個(gè)文本框中輸入的整數(shù)的大小,并將較大的數(shù)放到第三個(gè)文本框。分析:輸入的兩個(gè)數(shù)存放到x,y中,用z存放較大的數(shù):如果xy,則z=x,否則就讓z=y步驟:1、 新建窗體,放置三個(gè)文本框,及一個(gè)命令按鈕,分別選中這些控件,在屬性窗口中設(shè)置文本框及按鈕名稱為文本1、文本2、文本3、命令0Private Sub 命令0_Click()Dim x As Integer, y As Integer, z As IntegerIf x y Thenz = xEls

21、ez = yEnd If文本3.Value = zEnd Sub2、 選中按鈕,在其屬性窗口的中切換到“事件”選項(xiàng),再在“單擊”一欄中選“事件過(guò)程”,單擊這一欄后面的按鈕,輸入以下代碼:3、 切換到窗體視圖,在文本框1、2中輸入兩個(gè)數(shù)(例如2,6),單擊“確定”則在第三個(gè)文本框中顯示較大的數(shù)。如果從有三種或三種以上的條件選擇1種,則要用下面的條件語(yǔ)句:格式:If 條件表達(dá)式1 then執(zhí)行語(yǔ)句1Elseif 條件表達(dá)式2 then執(zhí)行語(yǔ)句2Else 執(zhí)行語(yǔ)句 nEnd if注意書上錯(cuò)誤,此處的Elseif沒(méi)有空格(在Else和if之間)例9-10 在窗體上放一個(gè)命令按鈕和兩個(gè)文本框,單擊命令按

22、鈕根據(jù)窗體中“成績(jī)”文本框輸入的成績(jī),判斷成績(jī)等級(jí),并顯示在窗體的“等級(jí)”文本框中。判定方法:85分以上優(yōu)秀,75分至85分良好,60至75分及格,60分以下不及格。分析:由于一個(gè)成績(jī)有四個(gè)等級(jí)選擇,所以要用到多種條件選擇語(yǔ)句步驟:1、 新建一個(gè)窗體,放一個(gè)命令按鈕及兩個(gè)文本框,在相應(yīng)的屬性窗口設(shè)置它們的名稱分別是“命令0”、“成績(jī)”、“等級(jí)”2、 在按鈕0上添加程序代碼如下:3、 關(guān)閉程序窗口,切換到窗體視圖下,輸入不同的分?jǐn)?shù),單擊“確定”按鈕后可顯示不同的等級(jí):多種條件選擇語(yǔ)句除了用以上的語(yǔ)句格式外,還有一種更加簡(jiǎn)潔的分支語(yǔ)句結(jié)構(gòu)Select Case語(yǔ)句(2) Select Case語(yǔ)句

23、格式:Select Case 變量表達(dá)式Case 表達(dá)式列表1執(zhí)行語(yǔ)句1Case 表達(dá)式列表2執(zhí)行語(yǔ)句2Case Else執(zhí)行語(yǔ)句nEnd Select功能:第一句中變量表達(dá)式中的值滿足哪個(gè)表達(dá)式列表,就執(zhí)行哪個(gè)語(yǔ)句。例9-11 將例9-10中的if 語(yǔ)句改成 Select Case表示。步驟:1、修改命令按鈕上程序代碼如下:四、 關(guān)閉程序窗口,切換到窗體視圖下輸入不同的成績(jī)值進(jìn)行調(diào)試。六、循環(huán)結(jié)構(gòu) 如果在程序中需要重復(fù)執(zhí)行某段代碼,可用循環(huán)結(jié)構(gòu) VBA中提供了三種循環(huán)結(jié)構(gòu)(一) DoLoop循環(huán)格式:Do While/Until 條件表達(dá)式中間需要反復(fù)執(zhí)行的語(yǔ)句稱為循環(huán)語(yǔ)句體Loop功能:根

24、據(jù)Do While后面的條件表達(dá)式來(lái)重復(fù)執(zhí)行循環(huán)語(yǔ)句體若干次,直到表達(dá)式的值不再成立時(shí),執(zhí)行Loop后面的語(yǔ)句。例9-12 在窗體上放一個(gè)命令按鈕,當(dāng)單擊該按鈕時(shí),計(jì)算1+2+3+100的結(jié)果,并利用消息框顯示出來(lái)步驟如下:1、 新建一個(gè)窗體,添加一個(gè)按鈕,在屬性窗口中設(shè)置名稱為“命令0”Private Sub 命令0_Click()Dim s As Integer, x As Integers = 0: x = 1Do While x = 100s = s + xx = x + 1LoopMsgBox 1+2+.+100的值為: & sEnd Sub2、 在按鈕上添加代碼如下:3、 關(guān)閉程序

25、編輯窗口,切換到窗體視圖,單擊命令按鈕,則彈出計(jì)算結(jié)果。想一想:l 如果改成求12310的值,該怎樣進(jìn)行?l 如果改成在文本框中輸入一個(gè)值x,求1+2+x的值,該怎樣進(jìn)行?例9-13在窗體上放一個(gè)命令按鈕,當(dāng)單擊該命令按鈕時(shí),求滿足不等式1+2+3+n=100的最大整數(shù)n,并將所求的n輸出在消息框中。(最終滿足條件的n為13)Private Sub 命令0_Click()Dim s As Integer, n As Integers = 0: n = 0Do While s = 100n = n + 1s = s + nLoop 注意退出循環(huán)時(shí)n(比滿足S100的那個(gè)n)增加了1MsgBox

26、滿足1+2+n 100 注意退出循環(huán)時(shí)n(比滿足S100的那個(gè)n)增加了1MsgBox 滿足1+2+n=100的最大整數(shù)n為 & n-1End Sub(二)For Next 循環(huán)格式:For 循環(huán)變量=初值 to 終值 step 增量 循環(huán)語(yǔ)句體Next 循環(huán)變量功能:其執(zhí)行過(guò)程分以下兩步:(1)循環(huán)變量取初值后,執(zhí)行循環(huán)體(2)到Next 循環(huán)變量時(shí),循環(huán)變量加上增量,看是否超過(guò)終值,如超過(guò)則退出循環(huán),否則繼續(xù)執(zhí)行循環(huán)體。說(shuō)明:step 1可省略不寫(即循環(huán)變量增量為1時(shí)可省略step項(xiàng)不寫)例9-15 編寫一個(gè)過(guò)程,求0到100之間的所有奇數(shù)的和分析:過(guò)程就是在程序中反復(fù)用到的一小段程序,

27、定義成過(guò)程后,后面再用到這段程序只要輸入過(guò)程名即可調(diào)用這段程序步驟:1、新建一個(gè)窗體,添加一個(gè)按鈕,進(jìn)入按鈕的代碼編輯窗口:修改此處為過(guò)程名L15()2、在編輯窗口上修改并添加代碼如下:(見(jiàn)上圖)Private Sub L15()定義過(guò)程L15Dim s As Integer, i As Integers = 0For i = 1 To 100 Step 2s = s + iNext iMsgBox 1+3+5+.+99= & sEnd Sub4、 切換到窗體設(shè)計(jì)視圖,選中按鈕,在屬性窗口中仍然選“事件”選項(xiàng)卡下的“單擊事件”欄中選“事件過(guò)程”,在編輯窗口中添加程序如下:5、切換到窗體視圖,單擊按鈕則調(diào)用過(guò)程L15,執(zhí)行過(guò)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論