菜鳥談VBA最最基礎(chǔ)入門_第1頁
菜鳥談VBA最最基礎(chǔ)入門_第2頁
菜鳥談VBA最最基礎(chǔ)入門_第3頁
菜鳥談VBA最最基礎(chǔ)入門_第4頁
菜鳥談VBA最最基礎(chǔ)入門_第5頁
已閱讀5頁,還剩104頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、菜鳥談VBA最最基礎(chǔ)入門如果大家是對Excel很有興趣的朋友,對VBA這個概念不陌生吧?VBA的功能實在太強大,可初學的我們,面對那一串串尤如外星文的代碼,你是不是看得頭昏腦脹?想學,是不是卻茫然得找不到入口?在這里,我把我自己的學習心得和筆記放出來,和大家一起分享交流,一起學習,共同進步。對了,還要告訴大家,我只是初學者,菜鳥一個,如果有什么說得不對的,希望大家及時指出。開始吧,我們共同的目標掀開那層神秘的面紗,看看VBA的真實面目。1、為什么要學習VBA?2、VBA與宏3、VBE簡介4、對象、屬性、方法、事件5、VBA過程6、數(shù)據(jù)類型、變量、數(shù)組、常量7、(回復)該定義變量為何種數(shù)據(jù)類型8

2、、VBA的函數(shù)9、程序流程控制:if語句10、程序流程控制:SelectCase語句 11、程序流程控制:Fornext語句12、幾個fornext循環(huán)的例子(作者:老朽)13、程序流程控制:ForEach語句14、程序流程控制:DoWhile語句15、程序流程控制:DoUntil語句16、程序流程控制:Goto語句17、用戶窗體18、Excel的對象模型19、小試牛刀制作一個個性化的歡迎界面20、處理單元格數(shù)據(jù)(復制、剪切、刪除)21、Range對象的End屬性什么是VBA?為什么要學習VBA?=VBA是VisualBasicForApplication的簡稱,具體說來,可能三天三夜也說不完

3、,也只知道VBA是建立在Office中的一種應用程序開發(fā)工具,其實知道這也就夠了。很懶很笨的我只想吃香噴噴的大米飯,可從沒想要知道大米飯是怎么來的。Excel本身的內(nèi)置操作和函數(shù)功能其實已經(jīng)很強大了,甚至有人說,只要學會2-30個函數(shù),就已經(jīng)可以滿足普通用戶日常的工作需求。那我們?yōu)槭裁匆獙WVBA?是的,如果只需要滿足一些普通的工作需求可能永遠也不會用到VBA,但在實際應用的過程中,人們的操作卻越來越大,需要也越來越高,這時候就需要用VBA來對Excel進行二次開發(fā)了,VBA可以有效地自定義和擴展Excel的功能。但有一點想要告訴大家,VBA功能很強大,但并不是萬能的,也并不是所有工作都需要用V

4、BA來解決,也并不是所有工作用VBA來解決都會很簡單,這要根據(jù)實際情況而定,有些工作你用VBA來解決的話相反會變得很麻煩。1、為什么要學習VBA?剛開始的內(nèi)容聽起來很枯燥,請大家不要分心,耐著性子看下去,興趣總是慢慢積累的。-1、親自動手,錄制一段屬于自己的宏提到VBA,相信很多人想到的就是宏,但是VBA與宏是不是一回事?我覺得它們不是一回事,但這不重要,我們要做的是先來認識一下宏。宏是什么?我理解的宏是一系列固定動作的集合,這個集合當遇到讓他執(zhí)行的條件后就逐個執(zhí)行。有人把我們錄制的宏比喻成一個武術(shù)運動員在比賽中練就的一段武術(shù)套路動作,這個套路遇到一定的條件(比賽)就執(zhí)行。好了,別閑著,動一動

5、你可愛的右手,點點鼠標,打開一個Excel文件,錄制一段宏來來研究研究,步驟如下:(1)選中任意一個單元格;(2)打開菜單工具宏錄制新宏,調(diào)出宏錄制對話框,輸入宏名(mysub),確定;(3)設(shè)置單元格字體為仿宋體,紅色;(4)點擊停止錄宏。這樣,一個簡單的設(shè)置單元格格式的宏就錄好了。2、VBA與宏 2、鼠標點一點,宏給單元格換新裝下面我們來執(zhí)行這段宏。(1)選中需要設(shè)置的任意單元格或單元格區(qū)域(為了看出效果,單元格最好有字符);(2)打開菜單工具宏宏,顯示“宏”對話框(快捷鍵:Alt+F8);(3)選擇我們剛才錄制的宏,單擊“執(zhí)行”。這樣我們看到已經(jīng)為剛才選中的單元格的字體已被修改成仿宋體,

6、紅色。自己動手試著錄制幾段宏,再執(zhí)行一下,加深印象。神奇了吧?以后當你再需要一遍又一遍地重復若干相同的操作的時候,會不會想到讓宏來替你做這一切?這是一個不錯的奴隸,不用花錢,且不用開工資,賺了吧?好了,收起笑容,繼續(xù)往下看。宏是什么?現(xiàn)在相信你能想出一千種說法,由你了,又笨又懶的可沒你聰明,也不再多說。上面說的執(zhí)行宏的過程是不是讓你感覺很麻煩?希望用快捷鍵來控制宏?這個我們可以在錄制宏之前在錄制宏對話框里進行設(shè)置。也可以在錄制宏后進行設(shè)置,按Alt+F8顯示宏對話框,單擊“選項”,在“宏選項”對話框里進行設(shè)置3、尋根問底,找到宏的老窩如果你忘記了,請你再打開宏錄制對話框,在宏名的下面,有一個“

7、保存在”的選項,點一點下拉的箭頭,我們可以看到,宏可以保存在三種不同的位置,分別是:(1)當前工作簿(系統(tǒng)默認):宏保存在當前工作薄的模塊里,只有當該工作薄打開時,宏才起作用。(2)新工作簿:新建一個工作薄保存。(3)個人宏工作簿:這是為宏而設(shè)計的一種特殊的具有自動隱藏特性的工作簿,如果你要讓某個宏在多個工作簿都能使用,那么就應當創(chuàng)建個人宏工作簿,并將宏保存于其中。上面我們錄制的宏是保存在當前工作薄里,我們在這里也只介紹保存在當前工作表里有宏。4、撥開層層迷霧,查看廬山真面目宏靠什么來控制Excel的運行?是不是感覺深在濃濃的迷霧里,感覺一頭霧水?讓我們鼓一鼓勁,撥開它的衣服,開開那家伙里面到

8、底是什么?(1)按Alt+F8快捷鍵打開“宏”對話框;(2)選擇我們剛才錄制的宏,點“編輯”按鈕。眼前一亮吧?這是一個新的天地VBA的編輯器窗口(VBE),這個我們以后再說,先將注意力集中到顯示的代碼上。代碼如下:復制內(nèi)容到剪貼板代碼:Submysub()mysubMacro宏由*錄制,時間:2011-12-11WithSelection.Font.Name=仿宋_GB2312.Size=12.Strikethrough=False.Superscript=False.Subscript=False.OutlineFont=False.Shadow=False.Underline=xlUnde

9、rlineStyleNone.ColorIndex=xlAutomaticEndWithSelection.Font.ColorIndex=3EndSub現(xiàn)在你可能感覺到上面這些亂七八糟的代碼會很陌生,甚至在問自己是不是來到外星人的世界,反正當初是這樣感覺的,但不要為此感到害怕,將來我們會慢慢熟悉他,就像閉上眼睛也能準確地將那個又大又紅的蘋果送到自己的嘴里。5、再進一步,給宏安上門鈴一遍一遍地在宏對話框里選擇宏名稱,按“執(zhí)行”按鈕來運行宏比較麻煩,指定快捷鍵雖然方便,但別人用自己的工作表時能不能快速上手?就算是自己,如果宏多了,或是放的時間長了,你還記得哪個快捷鍵控制哪個宏?作為excel開發(fā)

10、者,一個主要的目標是為自動化提供一個易于操作的界面,“按鈕”是最常見的界面組成元素之一,我們可以把宏指定給特定的按鈕,通過按鈕來執(zhí)行宏,還是用剛才我們錄制的那個宏來舉例。通過使用“窗體”工具欄,可以為工作簿中的工作表添加按鈕。在創(chuàng)建完一個按鈕后,可以為它指定宏,然后你的用戶就可以通過單擊按鈕來執(zhí)行宏。在本練習中,將創(chuàng)建一個按鈕,并為它指定一個宏,然后用該按鈕來執(zhí)行宏。具體步驟如下:(1)打開菜單視圖工具欄窗體,調(diào)出窗體工具欄。2007開發(fā)工具-插入-表單控件(2)單擊”窗體“工具欄中的“按鈕”控件,在工作表中希望放置按鈕的位置按下鼠標左鍵,拖動鼠標畫出一個按鈕,松開鼠標后,Excel會自動顯示

11、“指定宏”對話框。(3)從“指定宏”對話框中選擇“mysub”,單擊“確定”。這樣,就把該宏指定給命令按鈕。引用:按鈕,工作表等這些對象就像是Excel的眾多兒女,兒女太多,怎么稱呼這群兒女也是一個問題為了不出現(xiàn)叫兒子就七八個一起跑出來,同許多農(nóng)村父母給兒女起老大,老二,老三的稱呼一樣,xcel也用這種順序的起名方法給這些兒女貼上了標簽比如第一個按鈕是按鈕一,再畫一個就是按鈕二,然后是按鈕三,銨鈕四等等這樣,以后你要叫第三個兒子的時候直接叫按鈕三即可如果你嫌這個名字鄉(xiāng)下味太濃,如果你嫌這個名字不能很好地反映點擊它后會執(zhí)行怎樣的操作不清楚,你可以通過雙擊按鈕表面激活它,可重新為按鈕貼上合適的顯示

12、標簽需要提醒你的是,這里的標簽只是它顯示在你面前的樣子,實際上它是什么名字?我們可以點擊它,看一下名稱框里是什么為什么顯示出來的是一樣,而實際的名字卻是另一樣呢?也許你現(xiàn)在會感到迷茫,但不用管它,以后當我們學習了屬性后,一切就自然明白了下面我們來試一試用按鈕操作:(1)選擇單元格或單元格區(qū)域;(2)單擊按鈕。 按鈕就像裝在樓下的門鈴,美麗的嫦娥仙子家住在502,豬八戒來到樓下,找準號碼502,輕輕一按,“叮咚,叮咚”,嫦娥在樓上就給八戒開門了,八戒不用在樓下大聲地喊“嫦娥,開門?!币膊挥没▋擅X給嫦娥打個電話,當然更不用順著下水管從墻上爬進嫦娥的窗戶,方便而實在吧?這種遙控式的命令的確能讓繁瑣

13、的操作變得簡單而方便,讓我們獲得了一些使用Excel標準命令所不能實現(xiàn)的功能。如果你是八戒,當你熟悉了如何使用這種遙控一樣的門鈴以后,你可能都回奇怪自己當初在沒有門鈴的情況下,那段漫長的爬下水管道的日子是怎么熬過來的。讓嫦娥仙子開門的方法有很多種,同樣執(zhí)行宏也有多種方法可以選擇,我們還可以把宏指定給圖片,自選圖形,這些比較簡單,和指定給窗體按鈕是一樣的,同時我們還可以把宏指定給某個“事件”,比如單擊工作表,雙擊工作表,激活工作表,打開工作簿等等,你要安什么要的門鈴,選什么樣的音樂,隨你了。需要強調(diào)一點的是,我們剛說的“事件”是一個重要的概念,八戒按門鈴,就是一個“事件”,這個“事件”引發(fā)了嫦娥

14、的開門,只有門鈴響了,嫦娥才會去開門。除此而外“方法”“對象”“屬性”都是接下來我們會經(jīng)常接觸到的,慢慢走,留心點,一路上將會精彩不斷。6、小結(jié)到這里,我們對宏應該有一個簡單的了解了吧?宏實際上就是一個簡單的VBA的Sub過程,它保存在模塊里,以Sub開頭,以EndSub結(jié)尾,執(zhí)行時就從第一句逐句執(zhí)行,直到EndSub結(jié)束。就像前面我們說的武術(shù)運動員練的那段套路動作,總是抱拳,扎馬,出拳然后踢腿,永遠不可能沒有扎馬就出拳,沒有出拳就踢腿。我們今天錄的這段宏也總是先設(shè)字體,再改字體顏色,這種順序永遠不會亂。說完這些,你是不是感覺這些操作古板得沒有生氣?是不是感覺這宏的操作不能滿足自己的需求?想告

15、訴你的是,宏代碼絕不等于VBA,它只是VBA里最簡單的運用,盡管許多Excel過程都可以用錄制宏來完成,但是通過宏代碼還是無法完成許多的工作,如:(1)不可以建立公式,函數(shù);(2)沒有判斷或循環(huán)的功能;(3)不能進行人機交互;(4)無法顯示用戶窗體;(5)無法與其他軟件或文件進行互動。.所以,你看了上面的內(nèi)容后千萬不要以為宏就是VBA了,更不要以為自己已經(jīng)會VBA了,事實上是你才剛沾上VBA的邊,或者說連邊都沒沾上,甚至連宏今天我們都只是作了簡單的介紹。路漫漫其修遠兮,還等著我們上下去求索,路在腳下,武林高手總是從練習簡單的套路動作開始,不要厭倦扎馬的單調(diào),靜下心多練練,這會是你以后練習武功招

16、式的一個基礎(chǔ),什么是VBE?相信你還沒忘記吧?VBE就是VBA的編輯窗口,所有的VBA操作都在VBE里完成。VBE是一個分離出來的應用程序,它可以與Excel無縫結(jié)合,但是需要說明的是要運行VBE必須先運行Excel,VBA模塊與Excel工作薄文件一起存儲,除非激活VBE,否則VBA模塊是看不見的。1、運行Excel后,怎樣切換換到VBE窗口?打開大門的鑰匙有很多把,千萬別猴急地去爬下水管道。(1)按ALT+F11快捷鍵;(2)選擇“工具”“宏”“VisualBasic編輯器”命令。 (3)右擊工作表名稱標簽,點擊查看代碼。 4)單擊控件工具箱里的“查看代碼”。如果你的窗口里找不到控件工具箱

17、,請通過“視圖”“工具欄”“控件工具箱”打開它。 (5)通過控件工具箱建立一個新的控件,雙擊控件。 2、初識VBE窗口這個界面相信你不陌生吧?查看宏的時候我們已經(jīng)見識過它了。 “工程資源管理器”顯示一個樹型圖示,包含了當前在Excel中打開的所有Excel對象,包含工作表,模塊,窗體,加載宏及隱藏的工作薄,每個工作薄被認為是一個工程。在工程資源管理器里右擊,可以在右鍵菜單里選擇相應的命令插入模塊或窗體。如果你想刪除它或者保存它,同樣也可以在這里進行相應的操作。 “屬性窗口”顯示當前你選擇的Excel對象的屬性。選中某個對象后,可以在屬性窗口中修改選中的對象的的各樣屬性如顏色,名稱等。“立即窗口

18、”,這是一個非常有用的窗口,在其中可以直接執(zhí)行VBA語句,測試語句和調(diào)試代碼,就跟我們在DOS下輸入DOS命令一樣。如果你的立即窗口不可見,按CRTL+G調(diào)出來,可以在里面嘗試輸入:a1=”我在學習VBA”回車,看一看A1單元格里發(fā)生了什么變化? “代碼窗口”是干嘛用的?相信你已經(jīng)很清楚了,當然是用來編輯VBA代碼的地方,工程中的每一項都有一個與之相關(guān)聯(lián)的代碼窗口,如果要查看某對象的代碼窗口,或者說如果要查看某對象上面究竟編寫了什么VBA代碼,在“工程資源管理器”窗口中雙擊對象即可。 當然,你打開后的窗口不一定和上面一樣,VBE的窗口也不只上面幾個,我們可以打開“視圖”菜單,在里面進行選擇需要

19、顯示的窗口。這是很重要的幾個概念,是寫VBA程序的基礎(chǔ),大家仔細讀,一定要弄清楚。1、對象及對象層次結(jié)構(gòu)對象就是存在的東西,是VBA處理的內(nèi)容,包括工作薄、工作表、工作表上的單元格區(qū)域、圖表等等。對象可以相互包含,就像一個文件夾里可以包含多個文件夾一樣,而這個文件夾又可以被其他的文件夾包含,一個工作薄對象可以包含多個多個工作表對象,一個工作表對象又可以包含多個單元格(或圖表,圖形等),這種對象的排列模式稱為Excel的對象模型。-集合這個概念經(jīng)常遇到,我理解的集合是對相同類型的對象的統(tǒng)稱。某中學有5000個學生,名字各不相同,我們對他都統(tǒng)稱為某中學的學生,而不和一一去叫他們的名字,某中學的學生

20、在這里是集合。對象的引用,在Excel里,Workbooks集合包含在Application對象里,當我們要引用某工作薄的時候,要遵循從大到小的規(guī)則。跟表示硬盤里的某個文件的位置一樣,比如我們想引用D盤“我的文檔”文件夾下的名為“我的VBA課程.doc”文件時要輸入的是:4、對象、屬性、方法,事件D:我的文檔我的VBA課程.doc同樣,如果我們要引用名稱為“mybook.xls”的工作薄時就是:Application.Workbooks(“mybook.xls”)和引用文件不同的是,VBA里使用的分隔符是點。同理,當我們引用“mybook.xls”里面的工作表“mysheet”時應是:Appl

21、ication.Workbooks(“mybook.xls”).Worksheets(“mysheet”)可以繼續(xù)延伸到下一層,引用“mybook.xls”里工作表“mysheet”里面的單元格區(qū)域“A1:D10”:Application.Workbooks(“mybook.xls”).Worksheets(“mysheet”).Range(“A1:D10”)但是并不是每一次引用都必須這么呆板,就像豬八戒不用每一次都去爬下水管道。如果我們引用的是活動對象,也就是被激活的對象,引用就可以進行簡化。如果是mybook工作薄是激活的,引用可以簡化為Worksheets(“mysheet”).Rang

22、e(“A1:D10”)如果mysheet當前也是激活的,引用甚至還可以簡化為Range(“A1:D10”),也可以直接輸入A1:D10,如果引用的單元Range是單個的單元格,還可以用Cells(行號,列號)的引用方式。-2、屬性每一個對象都有屬性,一個屬性就是對一個對象的一個設(shè)置。豬八戒背著媳婦高秀蘭回自己的紫云洞,豬八戒的媳婦就是對象,“高秀蘭”就是豬八戒的媳婦的一個屬性(name屬性),引用對象的屬性同樣也要用點來分隔。豬八戒的媳婦.name高秀蘭別閑著,還是動動你的右手,打開一個工作表,Alt+F11(千萬別說你不知道這個快捷鍵是干什么,要不我保證被你氣個半死),如果立即窗口沒有打開,

23、按Ctrl+G打開,在里面輸入:復制內(nèi)容到剪貼板代碼:MsgboxWorksheets(1).name 回車。 Worksheets(1)和Worksheets(“sheet1”)有什么區(qū)別?Worksheets(1)表示W(wǎng)orksheets集合里的第一個工作表。Worksheets(“sheet1”)表示W(wǎng)orksheets集合里名為sheet1的工作表。至于Msgbox是什么,那就自己問Help了,在立即窗口里用鼠標左鍵把Msgbox抹黑,按F1,就彈出Help里對它的說明了。抹黑代碼,再按F1即可看到相應的幫助。說:“這個辦法很適用,一般人我不告訴他。” 一個對象有哪些屬性我們可以在屬性

24、窗口里查看,要修改一個對象的某種屬性,如名稱、顯示狀態(tài)、顏色等等,也可以在屬性窗口里進行修改,當然我們還可以利用代碼進行修改。改當前工作薄里的第三個工作表的名稱為“這個名字是我用VBA改的”,想想怎么寫代碼?把你的代碼輸在立即窗口里,回車,看看效果,你做到了嗎?-3、方法 每一個對象都有方法,方法就是在對象上執(zhí)行的某個動作。和屬性相比,屬性表示的是對象某種狀態(tài)或樣子,是靜態(tài)的,就像是語文里的名詞、形容詞和副詞,而方法則是做某件事的一個動作,就像動詞,對象和方法同樣用點來分隔。例如Range對象有有一個方法是Select,他的作用是選中指定的Range(單元格區(qū)域)對象,在立即窗口里輸入代碼:回

25、車,可以看到D1:F10已經(jīng)被選中了。 4、事件在上一面豬八戒按門鈴那里,我們已經(jīng)接觸過什么是事件了。簡單點說,事件就是由用戶或者系統(tǒng)觸發(fā)的,可以在代碼中響應的一段代碼。比如,當我們移動鼠標,打開工作薄,激活工作表,選中單元格,改變單元格的數(shù)值,點擊按鈕或窗體,敲擊鍵盤等等這些都會產(chǎn)生一系列的事件,通過編寫代碼響應這些事件,當發(fā)生此類事件時,程序代碼就會進行相應的操作。這樣解釋你會不會有些暈?感覺又一次進入了外星人的世界?還是舉例說明,我們需要當激活某工作表的時候,自動彈出一個對話框,告訴我們激活的工作表的名稱。(1)打開一個工作表,Alt+F11打開VBE窗口,在“工程對象管理器”窗口里雙擊

26、你要進行設(shè)置的工作表,使其代碼窗口顯示。(2)左面選擇對象Worksheet(工作表對象),右面選擇Activate事件,我們可以看到在代碼窗口里系統(tǒng)已經(jīng)為我們自動輸入了一段代碼。復制內(nèi)容到剪貼板代碼:PrivateSubWorksheet_Activate()End Sub提醒:初學的我們,不必完全記住對象及事件的名稱,也不必手工輸入,系統(tǒng)早為你準備好了,你可以在代碼窗口里進行選擇,左邊是對象,右面是事件,如果你想知道某個對象(例如工作薄、工作表、窗體等)有哪些事件,只需要雙擊這個對象,然后在代友窗口里查看即可。我們需要做的只是:當自己需要它的時候,知道打開哪個箱子把它拿出來即可. 廢話說完

27、,再回到問題里:要達到問題的目的,我們只需要在已給我們列出的兩段代碼中間加入需要進行操作的代碼就可以了,這里我們需要的是一個對話框來提醒,對了,還記得Msgbox吧?上面的代碼相信你應該能看懂吧?&和我們工作表里的函數(shù)是一樣的,連接文本的作用,A是當前活動工作表的名字(用了一個name屬性)。回到工作表,激活你剛才設(shè)置代碼的工作表,如果你剛才設(shè)置的工作表是激活狀態(tài),請選擇其他工作表,然后再重新激活它,看看你看到了什么? 看一下上面的代碼,對象和事件之間用什么來分隔?還是不是點?千萬別懶,一定要動手,換其他的事件或其他的對象試一試,試著用代碼改一下其他對象的

28、屬性,在單元格里添加點什么東西,這些隨你了,你可千萬別說你不知道哪些事件是干嘛用的。別忘記,抹黑代碼,按F1,再重復一遍,這是一件好武器,一般人我不告訴他. 一個過程就是執(zhí)行某些動作的代碼組合。VBA過程分Sub過程和Function過程。1、Sub過程總是以“sub過程名()”開頭,以“EndSub”結(jié)尾,一個過程就是執(zhí)行某項動作的一套指令,Sub過程不返回運行的結(jié)果。2、Function總是以“Function程序名()”開頭,以“EndFunction”結(jié)尾,和Sub過程的區(qū)別是Function過程返回程序運行的值,值可以是一個值或一個數(shù)組,就像我們的工作表函數(shù),F(xiàn)unction過程也就

29、是我們說的自定義函數(shù)。在這里,主要要給大家講的是Sub過程,F(xiàn)unction過程如果需要的話,在后面我們再講。好了,今天已經(jīng)講得夠多了,你對VBA應該已有一個簡單的認識了吧?要設(shè)計一個過程,其實很簡單,把需要的對象收集起來,看看我們要對他們的屬性進行怎樣的修改?我們需要做什么?需要用什么樣的方法?要用哪些事件?收集起來就是一個完整的過程。只要你肯動手,一定會覺得很簡單,你不要被那一大堆的對象、屬性、方法和事件給嚇暈了,完全不必全部記住它們,需要的時候知道在哪里找就行,而代碼也不必一個一個的去輸入,還記得前面一貼我們說的錄制宏嗎?當你需要進行某項操作的時候,不妨先錄一段宏,但是宏是呆板的,有許多

30、我們不需要的東西,給它修修枝,剪剪葉,整理整理,一個程序就OK了。5、VBA過程 同時,建議你在VBE窗口中,單擊“工具選項”,在彈出的“選項”對話框里勾選“自動列出成員”。設(shè)置好后,試著輸入代碼,看看顯示什么?對于初學者,是很有幫助的吧上面這個并不是真的程序,但都有了程序的思想了,程序里,事件、對象、屬性及過程都有了,你能找出來嗎?多嘗試,溫故知新,你可以想著用程序去解決一些你在使用Excel過程中遇到的問題,每一個問題的解決,你都會發(fā)現(xiàn)自己得到了很大的進步.好了,還是那句話,路在腳下,繼續(xù)走,精彩會慢慢為你上演,讓我們一起努力,共同進步。在上面,我們簡單介紹了VBA的開發(fā)環(huán)境、幾個常用的窗

31、口,并對對象、對象的屬性、對象的方法、對象的事件等概念作了簡單的介紹,貼子大家認真看了嗎?有沒有一點點的收獲?學習成績?nèi)绾??什么是對象?什么是集合?什么是屬性?什么是方法?什么是事件?如何正確地表示它們?這些,你都能回答了嗎?先沉思三秒鐘,如果你不能回答,那請趕快回過頭去,再看一遍,我們說VBA是采用面向?qū)ο蟮某绦蛟O(shè)計方式,這些都是很重要的概念,如果不弄清楚,實際應用時,你可能會感到手忙腳亂。如果已經(jīng)掌握了,那讓我們一起繼續(xù)本貼的內(nèi)容。這次,我們將繼續(xù)單調(diào)的基本功練習,講一些VBA里面的關(guān)鍵字,為程序設(shè)計打下基礎(chǔ),還是那句話,希望你不要嫌內(nèi)容的單調(diào),一口你永遠也吞不下一個大胖子,學習是一個循序

32、漸進的過程。VBA的主要目的是什么?不用說了你也知道,當然是處理數(shù)據(jù)。某些數(shù)據(jù)存在于對象中,如工作表的單元格區(qū)域里,某些數(shù)據(jù)存在于我們自定義的變量中。6、數(shù)據(jù)類型、變量、常量、數(shù)組2、變量變量是用于保存在程序運行過程中需要臨時保存的值或?qū)ο蟆>拖喈斢谖覀冊诓僮鞴ぷ鞅淼臅r候插入的輔助單元格、輔助列或輔助表一樣。同工作表的單元格一樣,變量可以接納很多種的數(shù)據(jù)類型,如其名,程序運行后,變量的值是可以改變的。如何定義變量?定義變量可以使用Dim語句: Dim 變量名 As 數(shù)據(jù)類型變量名有一定的命名規(guī)則,這里我就不詳細說明了,需要提醒的是在程序的設(shè)計過程中,你可能會定義很多的變量,為了閱讀及修改程序的

33、方便,你定義的變量名盡量能讓人一看就明白這個變量具體代表的是什么。在Dim語句中,我們可以不必聲明變量的數(shù)據(jù)類型,直接輸入“Dim變量名”此時定義的變量將被指定為Variant類型。但我們在程序設(shè)計的過程中,一般應該明確數(shù)據(jù)的類型,這是一個好的編程習慣,因為指定數(shù)據(jù)類型后會提高程序的運行速度。我們可以在模塊中輸入“OptionExplict”作為第一句語句來強制聲明所有變量。也可以點“工具選項”,在選項對話框里勾選“要求聲明變量”。這樣,VBA在遇到?jīng)]有聲明的變量名稱,該語句將導致程序停止。定義變量除了可以使用Dim語句外,比較常的還有:static語句,Private語句,Public語句。

34、使用不同的語句定義的變量不同的是它們的作用作用域不同,具體為:(1)如果在一個過程中包含了一個Dim或Static語句,此時聲明的變量作用域為此過程,即本地變量。(2)如果在一個模塊的第一個過程之前包含了Dim或Prvate語句,此時聲明的變量作用域為此模塊里所有的過程,也就是在此模塊里所有的過程都可以使用它,即模塊作用域下的變量; (3)如果在一個模塊的第一個過程之前包含了Public語名,此時聲明的變量作用域為所有模塊,即公有變量。變量的作用域是指變量保留其值的這段時間,也稱為變量的生成周期,它決定變量可以用于哪個模塊或過程中。給變量賦值 用等號()是VBA里的賦值運算符。比如我們把我在學

35、習VBA變量!這個字符串賦給變量A,則直接輸入:A=我在學習VBA變量!對了,你可以在立即窗口里試一下逐條輸入:A=我在學習VBA變量!MgboxA看一下效果。注意,在VBA里文本是要用英語引號引起來的,還有日期要用#號,比如將日期2009-3-10賦給變量A,則為:A=#2009-3-10# 3、常量執(zhí)行過程時,變量的值會發(fā)生改變,所以我們稱它為“變量”,但有時候我們需要引用不會發(fā)生變化的數(shù)據(jù),這就是常量。常量聲明后,不以對它進行再賦值。聲明常量設(shè)定常量的值,需要用Const語句:Const 常量名 As 數(shù)據(jù)類型 常量的值- 4、數(shù)組除了變量和常量以外,數(shù)組也是我們常用到的。什么是數(shù)組?數(shù)

36、組是具有相同數(shù)據(jù)類型并且共享一個名字的一組變量的集合。數(shù)組也是變量。數(shù)組中的元素通過索引數(shù)字加以區(qū)分。如何聲明數(shù)組?可以用Dim語句或者Public語句聲明數(shù)組。 Dim/Public 數(shù)組名 (a to b) as 數(shù)據(jù)類型 a和b是數(shù)組中元素的個數(shù),數(shù)組元素素最小值為a,最大值為b,元素個數(shù)為(b-a+1)個,當然,你也可以直接輸入個數(shù),此時默認最小索引號為0。如:Dimmyarr(5)AsInteger這個數(shù)組的最小元素索引號為0,元素個數(shù)為6。上面定義的只是一維數(shù)組,你還可以定義二維、三維、四維.如:Dimmyarr(1to5,1to10)AsInteger這就是一個二維數(shù)組,元素個數(shù)

37、為5*1050個。在程序設(shè)計的過程中,定義數(shù)組的時候我們可能不能確定數(shù)組的元素個數(shù),對數(shù)組進行聲明后,可以在運行時用ReDim語句重新指定數(shù)組的大小。-今天的這一部分內(nèi)容實在很枯燥,連都有點耐不住了,拉拉雜雜說了這么多,也不知道你看出點門道沒?同前一貼講的內(nèi)容一樣,這些基礎(chǔ)都是非常重要的,多讀幾遍,扎好馬才能修練更高深的武功,千萬別嫌這個過程的漫長。一個讓你心儀的女孩子,想牽上她的小手,徜徉在公園里的林蔭小道上,先前的送花、打電話等等那一串串巴結(jié)的行動你會不會嫌太漫長?VBA不像函數(shù)那樣直面我們,它躲在Excel的背后,像一個“養(yǎng)在深閨未得見”的美麗姑娘,她飄在墻角的那縷模糊卻美麗的身影對我們

38、充滿了誘惑,現(xiàn)在我們正在想法設(shè)法尋找她的聯(lián)系電話,要想成功俘虜她,這一步能少嗎?看的沒有動的快,動手操作才是學習的正確方法。發(fā)現(xiàn)問題,解決問題,這豈不是一個快樂的過程。 這就要根據(jù)你的實際需要,再結(jié)合各種數(shù)據(jù)的的范圍來看。在編寫程序的過程中,選擇需要存儲空間盡量小的數(shù)據(jù)類型來保存所需要的數(shù)據(jù),這是很有必要的,雖然我們可以把變量設(shè)為Variant型,但上面我說了,定義變量類型會提升程序的運行速度,這也是VBA提供各種數(shù)據(jù)類型存儲空間的原因。該定義變量為哪一種類型?看一看它的長度。用生活中的一個實例來說這個問題:有一天你上街去買一斤菜油,我們需要選擇一個容器來裝我們所要買的菜油(相當于聲明變量的類

39、型),如果我們沒有選擇選擇容器,上帝可不知道你要買多少斤菜油,他就扔給你一個超級大的水缸,這個水缸無論你要買多少菜油都是可以裝得下的。可是攜帶這樣一個水缸上街你會不會覺得太不方便了?用一個水缸來裝一斤菜油會不會太浪費了?所以我們得自己選擇一個瓶子去裝我們的油,一斤油,用一個瓶子剛好合適,當然,如果你只用一個茶杯去裝,那也是不行的。用數(shù)據(jù)來打比方,我們需要用變量來保存一個學生某學科考試成績的分數(shù),那么用Byte數(shù)據(jù)類型就可以了(它的范圍是0255),如果在這里使用Integer、Long、Single這些數(shù)據(jù)類型的話,就相當于我們用水桶,水缸去裝那一斤菜油,只是對計算機存儲空間的浪費,當然,如果

40、你的值的范圍超過了Byte的范圍,那定義成Byte也是不行的。7,有人問:如何知道該定義變量為何種類型?定義變量的類型時,除了考慮長度外,還要考慮變量的值的類型。買油的時候不管是用瓶子還是用水缸,反正都能裝回來,但是如果你用麻袋能不能裝那一斤油回來?還是那句話,如果你沒有定義變量類型或定義變量類型為Variant,聰明的計算機會先看你打的油是固體還是液體,是液體的話把麻袋扔在一邊,給你弄口大缸子。但是如果你自己選擇麻袋上街去買油,你還能不能把你的油帶回來?用數(shù)據(jù)來打比方,如果你定義了一個變量為Integer型,那你再用把學生姓名的字符串賦給它,行嗎?復制內(nèi)容到剪貼板代碼:Submysub()D

41、imaAsIntegera=我在學習VBA變量MsgBoxaEndSub將這個過程提制到模塊里,按F5運行它,看看是什么結(jié)果?嘗試修改一下定義的數(shù)據(jù)類型,看看修改后的運行結(jié)果!VBA函數(shù)=用Excel的時間相信你也不短了,什么是函數(shù)就不再細說了。與其他編程語言一樣,VBA含有各種內(nèi)置的函數(shù)。很多的VBA函數(shù)都與Excel的工作表函數(shù)類似,或者一樣。使用VBA函數(shù)的的方式與使用工作表公式中函數(shù)的方式相同,在VBA代碼中,我們可以使用很多Excel的工作表函數(shù),例如Sum,Abs等。例如:復制內(nèi)容到剪貼板代碼:Submyabs()a=InputBox(請輸入數(shù)值:,提示)labs=Abs(a)Ms

42、gBox你輸入的值的絕對值為:&labsEndSub這是一個求絕對值的過程,通過InputBox提示用戶輸入一個數(shù)值給變量a,再用Abs函數(shù)求出變量的絕對值,最后通過MsgBox返回結(jié)果。InputBox同MsgBox函數(shù)一樣,是很常用的函數(shù),關(guān)于它的功能及用法,請用絕招:抹黑,按F1,但并不是所有的工作表函數(shù)在VBA里都可以直接調(diào)用,但由于WorksheetFunction對象包含在Application對象中,如果我們要在VBA語句里使用某個不能直接調(diào)用的工作表函數(shù),只需要在函數(shù)名稱前加上Application.WorksheetFunction語語即可。如:在VBA里使用coun

43、ta函數(shù)則代碼為:application.worksheetfunction.counta(range(a1:a10)VBA里面的函數(shù)很多,可以簡化我們的計算和操作,功能強大啊。但當你面對那一堆英文字母,是否為該怎么記住它們感到暈菜?有人對我說,記住常用的幾個,其他的不用記那么清楚,有個模糊的印向,用時再翻Help,知道在哪里找就萬事OK了。我覺得這個方法很好,現(xiàn)轉(zhuǎn)送給你!接下來我們將一樣一樣地進行講解。程序流程控制if語句1、ifthen語句這個句式相當于中文里面的“如果.那么”。格式:if邏輯表達式then語句塊endif解釋:如果邏輯表達式的結(jié)果為true,則執(zhí)行語句塊里的所有語句,否則

44、執(zhí)行endif后面的語句。語句塊可以是一句指令或多條指令,也可以調(diào)用一個或多個過程,當然,也可以為空,就是沒有語句。如:要判斷A1單元格是否已輸入內(nèi)容,設(shè)計程序:代碼:Subtest1()Ifa1=ThenMsgBoxA1單元格沒有輸入任何內(nèi)容! End IfEnd Sub2、 ifthenelse語句這個語句相當于中文里面的“如果.那么.否則.”句式。格式:if邏輯表達式then語句塊1else語句塊2endif解釋:如果邏輯表達式的結(jié)果為true,則執(zhí)行語句塊1里的所有語句,如果邏輯表達式的結(jié)果為Flase則執(zhí)行語句塊2里的所有語句。如:要判斷A1單元格是否已輸入內(nèi)容,設(shè)計程序:復制內(nèi)容到

45、剪貼板代碼:Subtest2()Ifa1=ThenMsgBoxA1單元格沒有輸入任何內(nèi)容!ElseMsgBoxA1單元格已經(jīng)輸入了內(nèi)容!EndIfEndSub3、ifthenelseif語句這就相當于中文里面的若“如果那么否則如果那么否則”語句,當然,可以有多句“否則如果.”格式:If邏輯表達式1Then語句塊1ElseIf邏輯表達式2Then語句塊2ElseIf邏輯表達式3Then語句塊3Else語句塊nEedIf解釋:若邏輯表達式1的結(jié)果為True,則執(zhí)行語句塊1,接著繼續(xù)執(zhí)行EndIf后面的語句;若邏輯表達式1的結(jié)果為False,則檢查邏輯表達式2的結(jié)果,若為True則執(zhí)行語句塊2,接著

46、繼續(xù)執(zhí)行EndIf后面的語句.一直到所有結(jié)果的條件都不滿足時,才執(zhí)行Else后面的語句塊n。如:要判斷A1單元格的數(shù)是否能被2、3、5其中之一整除,設(shè)計程序:復制內(nèi)容到剪貼板代碼:Subtest3()Ifa1=ThenMsgBoxA1單元格沒有輸入任何內(nèi)容!ElseIfa1Mod2=0ThenMsgBoxA1單元格的數(shù)能被2整除!ElseIfa1Mod3=0ThenMsgBoxA1單元格的數(shù)能被3整除!ElseIfa1Mod5=0ThenMsgBoxA1單元格的數(shù)能被5整除!ElseMsgBoxA1單元格的數(shù)不能被2、3、5其中之一整除!EndIfEndSub程序流程控制SelectCase語

47、句=SelectCase語句同IF語句一樣,也是條件判斷的語句。它的功能也可以用IF語句來完成。但是,當程序的條件太多,用IF語句來判斷的話就存在一些不足了,比如程序是否美觀?是否便于閱讀?程序的執(zhí)行效率等等。SelectCase語句在執(zhí)行的效率上,同IF語句相比,肯定是要快得多。Select Case語句的語法SelectCase測試表達式Case條件表達式1語句塊1Case條件表達式2語句塊2Case條件表達式3語句塊3.Case條件表達式n語句塊nCaseElse語句塊ElseEndSelect.當某個條件表達式與測試表達式相匹配時,則執(zhí)行其后的語句塊,否則執(zhí)行CaseElse后的語句塊

48、,然后結(jié)束SelectCase塊的執(zhí)行。同IF語句一樣,可以不要CaseElse語句?!叭鐚1單元格的學生成績進行等級評定,小于等于30分的為差,30分到59分的為不及格,60分到79分的為及格,80分到89分的為良好,90到100分的為優(yōu)秀。”用SelectCase語句來解決就是:代碼:Subtest()Ifa1.Value=ThenMsgBoxA1單元格沒有輸入數(shù)字。ExitSub退出程序EndIfSelectCasea1.ValueCase0To29MsgBox差Case30To59MsgBox不及格Case60To79MsgBox及格“Case80To89MsgBox良好CaseEl

49、seMsgBox優(yōu)秀EndSelectEndSub補充說明:上頁附件寫的代碼,我只是考慮分數(shù)是整數(shù)的時候,這里我只是舉個例子,目的是讓大家認識SelectCase語句,因為沒有考慮小數(shù)和負數(shù)的情況.一量出現(xiàn)29.5之類的,就都全是優(yōu)秀.所以,程序本身并不全面.為此,38度OFFICE技術(shù)論壇的老朽對代碼進行了修定,提供了另一段全面的代碼,非常感謝SubTest()修訂:38度:老朽Ifa1.Value=ThenMsgBoxA1單元格沒有輸入數(shù)字。ExitSub退出程序EndIfSelectCasea1.ValueCaseIs30MsgBox差CaseIs60MsgBox不及格CaseIs80M

50、sgBox及格CaseIs90MsgBox良好CaseElseMsgBox優(yōu)秀EndSelectEndSub程序流程控制ForNext 循環(huán)語句=什么是循環(huán)?這里我們指的循環(huán)是指重復地執(zhí)行某項動作(語句塊)。同學們在操場上跑步,兩萬米長跑,每圈400米?!皡纭保瑯屢豁?,開始跑,一圈,兩圈,三圈.直到跑滿50圈才停止。這里,同學們就是在循環(huán)地在操場的跑道上執(zhí)行跑步的動作。我們來看一下Fornext的句式:For循環(huán)變量初值to終值step步長循環(huán)體1exitfor循環(huán)體2next循環(huán)變量解釋:從開始到結(jié)束,反復執(zhí)行For和Next之間的指令塊,除非遇到ExitFor語句,將提前跳出循環(huán)。其中,步

51、長和ExitFor語句以及Next后的循環(huán)變量均可省略,步長活力的時候默認為1。Exitfor語句是強制終止循環(huán)的語句,執(zhí)行它后將退出循環(huán),執(zhí)行next后面的語句。循環(huán)變量是一個變量,可以在循環(huán)體中對其進行修改,但一般就避免在循環(huán)體中對其修改。對句式進行了初步的認識后,我們用這個句式來敘述上面學生跑步的問題。把它編成程序,20000米,要跑50圈,也就是要50次,同學們要在上面一圈,兩圈。直到滿50圈才停止循環(huán)跑步,當然,如果你要提前退賽,就不用跑滿50圈了。有了這個思想,程序可以寫成:Sub循環(huán)跑步()dim圈數(shù)asbytefor圈數(shù)=1to50step1If學生.要求=退賽exitforE

52、ndIfNext圈數(shù)EndSub當然,這只是一個實例,幫助你對Fornext語句的理解,下面我們來用一個實例來講解For-next語句!問題:求1到1000的自然數(shù)的和。程序編為:復制內(nèi)容到剪貼板代碼:Submysum()DimLsumAsLong,iAsLongFori=1To1000Lsum=Lsum+iNextMsgBox1到1000的自然數(shù)和為:&LsumEndSub以下代碼由老朽提供撰寫:38度:老朽日期:2009-7-1上午11:40:59Sub求1到10000之間偶數(shù)和()DimI&,J&ForI=0To10000Step2J=J+INextMsgBox1

53、到10000之間偶數(shù)和為&JEndSub撰寫:38度:老朽日期:2009-7-1上午11:40:59Sub求1到10000之間奇數(shù)和()DimI&,J&ForI=1To10000Step2J=J+INextMsgBox1到10000之間奇數(shù)和為&JEndSub撰寫:38度:老朽日期:2009-7-1上午11:40:59Sub求1到10000之間奇數(shù)和2()DimI&,J&ForI=10000To1Step-2ForI=9999To1Step-2此句于2009年8月18日糾正J=J+INextMsgBox1到10000之間奇數(shù)和為&JEnd

54、Sub撰寫:38度:老朽日期:2009-7-1上午11:40:59Sub求1到10000之間能被5整除的數(shù)之和()DimI&,J&ForI=0To10000Step5J=J+INextMsgBox1到10000之間能被5整除的數(shù)之和為&JEndSub撰寫:38度:老朽日期:2009-7-1上午11:40:59Sub求1到10000之間能被5整除的數(shù)之和2()DimI&,J&ForI=10000To1Step-5J=J+INextMsgBox1到10000之間能被5整除的數(shù)之和為&JEndSub程序流程控制ForEach 循環(huán)語句=有了前面對循環(huán)一

55、詞的理解,這里我們不用再多說,如果你知道了Fornext語句的工作原理,這里再來學習Foreach循環(huán)以及下面我們接著要講的句式,那就相當簡單了,同樣的工作原理。學會了吃蘋果,那么離會吃梨的道路還會遠嗎?呵呵,只是開個小小的玩笑,下面我們繼續(xù),首先來看看ForEach語句的句式:ForEacn元素變量In對象集合或數(shù)組名稱語句塊1ExitFor語句塊2next元素變量和上面Fornext句式是一樣的工作原理。這里的“元素變量”是用來遍歷集合或數(shù)中中元素的變量,它從集合或數(shù)組的第一個元素開始,直到最后一個元素,然后退出循環(huán)。這里我們舉個例子,把當前工作薄中工作表的名稱寫在A列,程序為:復制內(nèi)容到

56、剪貼板代碼:Subshtname()DimiAsInteger,shtAsWorksheeti=1ForEachshtInWorksheetsCells(i,1)=sht.Namei=i+1讓寫入名稱的單元格下移一行NextEndSub程序流程控制Do While語句=DoWhile也是循環(huán)語句,它分為兩種情況,一種是把循環(huán)條件放在開頭,一種是把循環(huán)條件放在結(jié)尾。1、開頭判斷循環(huán)條件語句格式:DoWihle循環(huán)條件語句塊1ExitDo語句塊2Loop首先判斷循環(huán)條件,條件為真則執(zhí)行Do到Loop之間的語句。2、結(jié)尾判斷循環(huán)條件語句格式:Do語句塊1ExitDo語句塊2LoopWihle循環(huán)條件

57、 先執(zhí)行一次Do到Loop之間的語句,再判斷循環(huán)條件,滿足條件則進行循環(huán)。兩種格式的區(qū)別:因為第二種格式是把循環(huán)體放在尾部,得先執(zhí)行一遍語句再進行循環(huán)條件判斷,所以,同樣的條件,第二種格式的循環(huán)會比第一種多執(zhí)行一次循環(huán)部份的語句。我們用Do While語句來解決求11000的自然數(shù)的和的問題: Submysum()DimLsumAsLong,iAsLongi=1DoWhilei1000MsgBox1到1000的自然數(shù)和為:&LsumEndSub是的,你看了上面的代碼,覺得和樓上我們寫的代碼變化并不大。這里我用的是第二種格式(結(jié)尾判斷)的語句,你可以試著用第一種句式寫一寫,或者改一改其他

58、的問題.這里,我只是舉個例子,路還得自己走!程序流程控制Go to 語句=Goto在英語里是什么?相信大家的英語都比我好得太多,不用多說。其實Goto語句的作用用定兩個英語單詞就說明問題了,“Goto地點”就是去到哪兒的意思。Goto語句是將程序轉(zhuǎn)到指定的標簽的語句位置,然后繼續(xù)往下執(zhí)行。Goto語句通常用來作錯誤處理。同樣的,還是用Go to 語句來做11000自然數(shù)的和:Submysum()DimLsumAsLong,iAsLongi=1x:為goto語句設(shè)置的標簽,必須以英文狀態(tài)下的冒號結(jié)尾Lsum=Lsum+ii=i+1Ifi=1000ThenGoTox如果i工具箱”菜單命令,或單擊“

59、工具欄”上的“工具箱”按鈕打開它。想知道“工具箱”里的控件是哪一種是“命令按鈕”,哪一種是“標簽”,哪一種是“文字框”,只需要把鼠標指針移到相應的控件上面,即會顯示相應的說明。在工具箱里用鼠標點選相應的控件,在窗體上按下鼠標左鍵,拖動即可將控件添加到用戶窗體??丶拇笮?、在窗體上的位置我們可以通過鼠標進行修改,當然,同修改其他屬性一樣,我們也可以在屬性窗口或程序的過程中用代碼進行修改。別閑著,動手試一試:(1)向窗體添加一個命令按鈕改按鈕名稱為“確定”。設(shè)置顯示在按鈕上的文字(Caption屬性)為“完成”,高25(Height屬性),寬60(Width屬性),距“我的窗體”左端220(Lef

60、t屬性),距“我的窗體”頂端80(Top屬性)。當然,上面只是教你怎樣在屬性窗口里對控件的屬性進行修改。要求不是太完美的時候,我們可以在窗體上用鼠標拖動修改一下就可以了。(2)向窗體添加一個標簽改標簽的名稱為“說明”。設(shè)置字體(Font屬性)為“宋體,五號,斜體”,顯示的內(nèi)容(Caption屬性)為“請輸入內(nèi)容”(慢速雙擊激活控件即可輸入)。(3)向窗體添加一個文字框改文字框的名稱為“內(nèi)容”,設(shè)置字體(Font屬性)為“楷體五號字”,字體顏色(ForeColor屬性)為“紅色”?;氐酱绑w設(shè)計模式,按F5鍵(或者執(zhí)行“運行運行子過程/窗體”菜單命令,或單擊工具欄上的“運行子過程/窗體”命令按鈕),完整的一個用戶窗體就顯示在桌面上了。當然,因為沒有添加任何的VBA指令,此時,窗體里的控件是不會工作的。 (4)為命令按鈕添加事件過程上面的標簽,文字框,命令按等控件(Ac

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論