資源描述:
《第8章+vba與模塊》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第8章VBA與模塊主講:陳莉Email:chl@huel.edu.cn本章要求:1、了解VBA編程環(huán)境;2、掌握VBA編程基礎(chǔ):常量、變量、表達(dá)式;3、掌握順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)4、了解VBA模塊本章要點(diǎn):掌握順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)學(xué)時(shí)安排:8學(xué)時(shí)(理論)+8學(xué)時(shí)(實(shí)踐)第8章VBA與模塊例8-11編程實(shí)現(xiàn),對(duì)任給的三個(gè)數(shù),按從小到大的順序輸出。第8章VBA與模塊例8-18編程實(shí)現(xiàn),一張厚度為0.4毫米的紙對(duì)折多少次后高度超過(guò)珠穆朗瑪峰(8848000)?例:百元買(mǎi)百雞問(wèn)題。假定小雞每只5角,公雞每只2元,母雞每只3元。現(xiàn)在有100元錢(qián)要求買(mǎi)100只雞,編程列出所有可能的購(gòu)雞方
2、案。例編程實(shí)現(xiàn),對(duì)任意輸入的一個(gè)3位數(shù),輸出其逆序數(shù)。第8章VBA與模塊●VBA程序設(shè)計(jì)基礎(chǔ)●模塊的概念●常用標(biāo)準(zhǔn)函數(shù)●VBA的程序結(jié)構(gòu)●VBA的數(shù)據(jù)庫(kù)編程●過(guò)程調(diào)用和參數(shù)傳遞1.順序結(jié)構(gòu)2.選擇結(jié)構(gòu)3.循環(huán)結(jié)構(gòu)8.1VBA簡(jiǎn)介VBA(VisualBasicforApplication)是微軟系列軟件的內(nèi)置編程語(yǔ)言。編程語(yǔ)言是用戶(hù)和計(jì)算機(jī)進(jìn)行信息交流的媒介。使用編程語(yǔ)言可以設(shè)計(jì)計(jì)算機(jī)程序,控制計(jì)算機(jī)完成用戶(hù)要求的各項(xiàng)操作功能。VBA程序由稱(chēng)之為“過(guò)程”的程序段組成,過(guò)程中的語(yǔ)句按照解決問(wèn)題的邏輯順序依次排列。執(zhí)行VBA程序時(shí),計(jì)算機(jī)會(huì)自動(dòng)按照過(guò)程中各條語(yǔ)句的語(yǔ)義,從開(kāi)始執(zhí)行到結(jié)束。8.1.
3、1VBA程序編輯環(huán)境VBA的開(kāi)發(fā)界面稱(chēng)為VBE(VisualBasicEditor)。它是VBA程序編輯、調(diào)試的環(huán)境。1.VBE窗口VBE窗口主要由標(biāo)準(zhǔn)工具欄、工程資源管理器窗口、代碼窗口、屬性窗口、立即窗口等組成。通過(guò)單擊工具欄中“視圖”主菜單可以打開(kāi)各個(gè)窗口。8.1.1VBA程序編輯環(huán)境2.打開(kāi)VBE窗口常見(jiàn)打開(kāi)VBE環(huán)境方法有以下三種:(1)直接進(jìn)入單擊功能區(qū)“創(chuàng)建”選項(xiàng)卡下的“VisualBasic”按鈕。(2)新建一個(gè)模塊,進(jìn)入VBE。單擊功能區(qū)“創(chuàng)建”選項(xiàng)卡下的“模塊”按鈕。(3)創(chuàng)建響應(yīng)數(shù)據(jù)庫(kù)對(duì)象的事件過(guò)程,通過(guò)事件過(guò)程進(jìn)入VBE。8.1.2VBA模塊在Access中,模塊分
4、為類(lèi)模塊和標(biāo)準(zhǔn)模塊兩種類(lèi)型。(1)類(lèi)模塊類(lèi)模塊是代碼和數(shù)據(jù)的集合。窗體模塊和報(bào)表模塊都屬于類(lèi)模塊,它們從屬于各自的窗體或報(bào)表。窗體模塊中的事件過(guò)程的代碼用于響應(yīng)窗體或窗體上控件的觸發(fā)事件。報(bào)表模塊中的事件過(guò)程的代碼用于響應(yīng)報(bào)表或報(bào)表上控件的觸發(fā)事件。1.模塊的分類(lèi)窗體模塊:是一種類(lèi)模塊,其中包括對(duì)象Command0的click事件過(guò)程。8.1.2VBA模塊(2)標(biāo)準(zhǔn)模塊標(biāo)準(zhǔn)模塊是由代碼組成的集合,它與任何Access對(duì)象都沒(méi)有關(guān)聯(lián)??梢酝ㄟ^(guò)模塊對(duì)象直接創(chuàng)建。標(biāo)準(zhǔn)模塊與類(lèi)模塊的主要區(qū)別在于:它們的范圍和生命周期不同。1.模塊的分類(lèi)標(biāo)準(zhǔn)模塊:包括通用過(guò)程welcome(),與數(shù)據(jù)庫(kù)對(duì)象無(wú)關(guān)。8
5、.1.2VBA模塊事件過(guò)程是專(zhuān)為特定事件編寫(xiě)的一組代碼。事件過(guò)程可以被窗體或報(bào)表的特定事件調(diào)用,實(shí)現(xiàn)特定的操作。事件過(guò)程只能在類(lèi)模塊中定義。在窗體或報(bào)表中創(chuàng)建第一個(gè)事件過(guò)程之后,系統(tǒng)會(huì)自動(dòng)創(chuàng)建與其對(duì)應(yīng)的窗體模塊或報(bào)表模塊。2.事件過(guò)程8.1.2VBA模塊通用過(guò)程是與特定事件無(wú)關(guān)的一組代碼,能被多個(gè)相同類(lèi)型或不同類(lèi)型的事件調(diào)用。在類(lèi)模塊和標(biāo)準(zhǔn)模塊中,都可以定義通用過(guò)程3.通用過(guò)程8.1.2VBA模塊例8-1建立一個(gè)類(lèi)模塊,創(chuàng)建下圖窗體,單擊“開(kāi)始”按鈕時(shí),顯示“歡迎使用Access!”8.1.2VBA模塊操作步驟:(1)在數(shù)據(jù)庫(kù)中,創(chuàng)建窗體,添加命令按鈕控件,設(shè)置窗體屬性,使“記錄選擇器鈕”
6、、“導(dǎo)航按鈕”、“分隔線”均不顯示。(2)右擊命令按鈕控件,選擇快捷菜單中“事件生成器”,在“選擇生成器”對(duì)話框中選擇“代碼生成器”。(3)在事件過(guò)程中輸入代碼。8.1.2VBA模塊例8-2建立一個(gè)標(biāo)準(zhǔn)模塊,運(yùn)行時(shí)顯示“歡迎使用Access!”操作步驟:(1)在數(shù)據(jù)庫(kù)中,單擊“創(chuàng)建”選項(xiàng)卡下的“模塊”按鈕。(2)輸入代碼。(3)單擊“保存”按鈕,為模塊起名:First。(4)單擊標(biāo)準(zhǔn)工具欄上“運(yùn)行子過(guò)程”命令,數(shù)據(jù)庫(kù)窗口顯示相應(yīng)信息。8.2面向?qū)ο蟪绦蛟O(shè)計(jì)8.2.1基本概念類(lèi)是一個(gè)抽象的概念,自然界中的一切對(duì)象都有具體的類(lèi)別。例如,學(xué)生就是一種類(lèi)別。某一個(gè)學(xué)生則是學(xué)生類(lèi)中包含的一個(gè)對(duì)象。A
7、ccess數(shù)據(jù)庫(kù)窗口左邊的5種對(duì)象:表、查詢(xún)、窗體、報(bào)表、宏,應(yīng)該準(zhǔn)確地稱(chēng)為5種對(duì)象類(lèi)。1.類(lèi)2.對(duì)象在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,基本概念包括對(duì)象、類(lèi)、屬性、事件、方法等。現(xiàn)實(shí)世界的任何事物都是對(duì)象。例如一個(gè)學(xué)生、一本書(shū)等。面向?qū)ο蟪绦蛟O(shè)計(jì)的主要任務(wù)是以“對(duì)象”為中心,設(shè)計(jì)模塊。Access中的對(duì)象是指程序中的元素,如表、窗體、按鈕等。8.2面向?qū)ο蟪绦蛟O(shè)計(jì)8.2.1基本概念例如,窗體中的文本框具有前景色、字體、字號(hào)等相關(guān)屬