大部份的程式入門教學, 都會以一個視窗秀出 Hello World作為第一個程式的撰寫. 我們沿襲這個傳統但稍加修改來開始我們的第一個VBA程式.
在剛才打開的程式撰寫視窗中游標的位置輸入
sub My1stSub
後按下[enter]鍵, 會看到如下的畫面
系統自動把sub 變成 Sub, 隔了一行後, 又自動的加上了 End Sub;
在 My1stSub的後面也自動加上了括號(). 這個
Sub 巨集名稱()
End Sub
是巨集頭尾的標準格式, 所以VBE自動幫忙完成了. 其實巨集是一個可以被呼叫的副程式,
所以用Sub做開頭來標示, 意指Subroutine. 後面的巨集名稱是可以指定的, 通常設定成有意義的字串, 如My1stSub (我的第一個副程式), 但開頭不能是數字. 結尾用End Sub來標示這個副程式的結束. 程式碼就寫在這兩行的中間.
接下來在游標處按下[tab]鍵, 游標會跳過4個字的寬度, 然後輸入
Msgbox ”Hi, 我的第一個巨集程式”
整個程式看起來如下圖
按下[tab]鍵讓游標跳過4個字的寬度的目的是讓整個程式碼容易閱讀, 稱為縮排, 可以在編輯工具列中找到相同功能的工具. Msgbox 是讓EXCEL秀出一個訊息視窗的指令, 後面接著用雙引號刮起來的文字, 就是要秀出來的訊息.
怎麼讓EXCEL執行這段程式呢? 在VBE環境中, 首先把游標用滑鼠移動到要執行的Sub區段中的任何位置, 如本例的My1stSub中, 然後按功能表[執行]或工具列的[u]工具或鍵盤[F5]都可以啟動執行.
執行的結果如下圖示, EXCEL會出現一個視窗, 顯示剛才所設定的訊息文字, 等著使用者按[確定]來結束這個Msgbox指令. 注意, 使用者一定要回應, EXCEL才會繼續下一個動作.
Msgbox 作為我們的第一個程式, 只是一個顯示訊息的介面. 在稍後的資料庫程式中, 也會運用來作為跟使用者溝通的介面.
在EXCEL環境中也可以來執行巨集. 回到EXCEL環境, 在[開發人員]工能表或[檢視]功能表按下[巨集]工具, 會出現巨集選取視窗, 如下圖
只有一個巨集: Sheet1.My1stSub, 系統已經自動選取, 按下[執行]鈕, 會得到跟上面相同的結果. 奇怪的是巨集名稱為何在My1stSub前面多了一個Sheet1.呢? 因為我們剛才是在Sheet1的程式區段內寫下My1stSub巨集, 所以My1stSub是屬於Sheet1的子程式, 為了標示並區分來自Sheet1的My1stSub, 所以在My1stSub前面加了一個Sheet1, 並用”.”來分隔 Sheet1與My1stSub的從屬關係.
在開始下一個階段前, 建議你自己多練習幾次, 直到你記得了Sub與Msgbox.