第四課理解變量和變量的作用(1) 來源:啄木鳥之家 作者:liu 等級:默認等級 發(fā)布于2005-12-30 00:29 被讀5390次 【字體:大 中 小】 |
4.1 代碼存在的位置:模塊 VBA代碼必須存放在某個位置,這個地方就是模塊。有兩種基本類型的模塊:標準模塊和類模塊。模塊中的每個過程或者是函數(shù)過程,或者是子程序概念.本課的最后部分將討論函數(shù)過程和子程序的區(qū)別。 新術語: 模塊:它是作為一個單元保存在一起的VBA定義和過程的集合。 類模塊:VBA允許你創(chuàng)建自己的對象,對象的定義包含在類模塊中。 你的大部分工作集中在標準模塊中(簡稱為模塊)當錄制宏時如果不存在模塊,EXCEL自動創(chuàng)建一個。EXCEL和VBA不關心代碼存放在哪一個模塊中,只要代碼存在于打開的工作簿中即可。 4.2 對模塊的概覽 過程被定義為VBA代碼的一個單元,過程中包括一系列用于執(zhí)行某個任務或是進行某種計算的語句。工作簿的每個過程都有唯一的名字加以區(qū)分。 有兩種不同的過程:子程序和函數(shù)過程。子程序只執(zhí)行一個或多個操作,而不返回數(shù)值。當錄制完宏查看代碼時,所看到的就是子程序。宏只能錄制子程序,而不能錄制函數(shù)過程。一個子程序的例子如清單4-1所示。 程序清單4-1 子程序的例子 Sub cmdSmallFont_Click() With Selection.Font .Name="Arial" .FontStyle="Regular" .Size=16 End With End sub 上面列出的過程實際上是一個事件過程。通過它的名字,就可以知道這是一個事件過程。這個過程的名字是由一個對象的名字CmdSmallFont和一個事件的名字Click組成的,兩者之間用下劃線分開。如果還不明白,可以告訴你,CmdSmallFont是一個命令按鈕的名字。也就是說,當單擊這個命令按鈕時,就會運行這個事件過程。 函數(shù)過程通常情況下稱為函數(shù),要返回一個數(shù)值。這個數(shù)值通常是計算的結果或是測試的結果,例如False 或True.正如前面所說,可以用VBA創(chuàng)建自定義函數(shù)。實際上可以在工作表上使用你創(chuàng)建的函數(shù)。程序清單4-2是一個計算價格的10%為運費的簡單例子。 程序清單4-2 簡單的用戶定義函數(shù)示例。 Public Function Shipping(Price) Shipping = Price * 0.1 End Function 請注意,這個函數(shù)使用一個參數(shù)(Price).子程序和函數(shù)都可以使用參數(shù)。不論Price的值是多少,它都將決定運費額。Price可以是數(shù)字和單元格引用。函數(shù)返回計算出來的運費,這個函數(shù)可以用在單元格中。 A B 1 Price 100 2 Shipping =shipping(B1) 4.2.1 創(chuàng)建過程 創(chuàng)建第一個過程需要兩個基本步驟。首先,需要向工作簿中添加一個模塊。接著需要向模塊中添加一個工程。對于創(chuàng)建的每一個應用程序,只需添加一次模塊??梢允褂枚鄠€模塊,但這是不必要的。某些開發(fā)者喜歡使用多個模塊,以便根據(jù)他們的目的或者窗體對過程進行組織。在本練習中,創(chuàng)建的過程只顯示一個消息框。 在本練習中創(chuàng)建的過程只顯示一個消息框。在本練習中使用Msgbox是為了提供一個可見的例子,雖然我們還沒有介紹過Msgbox語句,但是在本例中將使用它。要創(chuàng)建該過程,請按如下步驟進行: 1)打開一個新工作簿。 2)選擇"工具"-"宏"-"Visual Basic編輯器",打開VBA編輯器窗口。 3)在`VBA編輯器的左面,可以看到“工程資源管理器”窗口。在工程資源管理器窗口的“Thisworkbook"上單擊鼠標右鍵,選擇“插入”-“模塊”,這樣就將一個模塊添加到應用程序中了。(如果你沒有看見“工程資源管理器”窗口,可以按Ctrl+R) 4)選擇“插入”“過程”,顯示“添加過程”對話框。 5)輸入“第一個工程”作為過程名字。在“類型”分組框中,確認選擇了“子程序”。單擊“確定”按鈕。這樣一個新的過程就添加到模塊中了??梢栽谀K中看到以 Public Sub 第一個過程()開始,以End Sub結束的語句結構。 6)在過程中插入光標,輸入以下語句并回車: Msgbox "這是我的第一個過程" 在輸入Msgbox后,會自動彈出一個消息框告訴你有關這條命令的信息,稱之為自動列表技術。輸入完成的過程如下所示: Public Sub 第一個過程() Msgbox "這是我的第一個過程" End Sub VBA對子程序和函數(shù)有如下的命名規(guī)則: * 名字中可以包含字母數(shù)字和下劃線。 * 名字中不能包含空格句號驚嘆號,也不能包含字符@ & $ #. * 名字最多可以包含255個字符。 4.2.2 運行宏 創(chuàng)建這個過程后,可以運行一下。運行一個過程有幾種方法:可以直接使用“運行”菜單,“運行子程序/用戶窗體”工具欄按鈕或按下F5鍵。要運行一個過程,可以按照如下步驟: 1)單擊“運行子程序/用戶窗體”工具欄按鈕,過程執(zhí)行并顯示一個消息框。 2)單擊消息框之中的“確定”按鈕,關閉該消息框。 4.3 保存對模塊所做的改變 要保存新過程,需要保存過程所駐留的工作簿.可以用VBA編輯器保存工作簿.具體步驟如下: 1)選擇"文件"-"保存工作簿".因為本工作簿還沒有保存過,所以要給它命名. 2)輸入"HOUR4"作為文件名并按回車鍵,則工作簿和模塊與過程都保存下來了. |