[Excel][VBA]1.我的第一個VBA程式

文、意如

再文章開始之前,先簡單介紹一下,VBA基本上就是一個寫巨集的程式語言,

什麼是巨集呢?你可以將重複性高的動作全部錄下來,存放在一個巨集中,待下次要使用時,直接套用這個巨集即可。

建議可以先了解,熟悉一下巨集功能,可先參考此篇文章:[Excel]一定要學會的巨集-基礎篇

實作:我的第一個VBA-跳出彈窗顯示訊息

 

▶ Windows:開啟Excel軟體→檔案→選項→自訂功能區→開發人員打V

 

 

▶ Mac:開啟Excel軟體→Excel→喜好設定→功能區和工具列→開發人員打V

 

 

檢查功能表列是否已經開啟開發人員的Tab

 

 

步驟一:

1. 工具列→開發人員→巨集

 

 

2. 輸入巨集名稱→命名為:“測試彈窗”

 

 

按下+號或建立按鈕來新增一個巨集。

此時會跳出VBA程式畫面,如果沒跳出下方程式畫面,請在你的巨集名稱上,雙擊兩下即可開啟,也可以直接點選開發人員→Visual Basic按鈕即可

 

 

程式介面如下:

 

 

步驟二:

接下來就可以開始寫程式了,我們要寫一個跳出彈窗訊息的程式。

一開始會預設寫好開始程序sub與結束程式End Sub

接下來在中間輸入要執行的程式碼

 

 

程式碼如下:

MsgBox(“hi,123”)

MsgBox 可以跳出一個彈窗的訊息,而括弧中的字串為彈窗中要出現的文字。

2.輸入完後按下工具箱中執行箭頭

 

 

點選執行按鈕後會跳出巨集對話窗,選擇該巨集「測試彈窗」後按下執行按鈕。

 

 

完成檔:已成功跳出彈窗

 

 

恭喜你第一個vba程式完成囉!

接下來我們快速認識一下在vba程式中如何註解與換行。

註解:只需要註解的文字前加上單引號(‘),在單引號後方的這行文字一律為註解,程式碼不執行,試試看打入’此行為註解,程式不執行

如下圖,再按下執行按鈕試試看:

 

 

換行:

VBA 的程式碼都是一行一個敘述,如果一行程式碼太長的時候,想要斷成多行時,只要在結尾處加上一個底線,例如:

x = “HelloWorld”

可以改寫為:

x =”Hello _
   World”

 

 

一般程式碼中多餘的空白並不會影響程式的執行,所以通常程式設計師都會使用空白或Tab鍵稍微將程式碼排版一下,已方便閱讀。

按下按鈕,呼叫自己的程式(巨集),重新建立新的程式功能

如果是新的檔案要一個新的功能,直接點選開發人員→Visual Basic按鈕

 

 

在空白區按下右鍵→插入→模組

 

 

此時會跳出Module1,模組寫程式碼的視窗。

 

 

我們可以先修改模組名稱,方便我們更容易辨識,點選屬性→名稱→點擊後輸入你的新模組名稱

 

 

先在空白的地方打入以下文字

Sub test()
    '要執行的程式
    MsgBox ("hi,123")
End Sub

 

 

接下來回到 Excel 主視窗,點選左上角Excel圖示

 

 

1. 開發人員

2. 插入→按鈕

3. 在任一個位置左上拖到右下,拉一個按鈕出來(或者點一下)

 

 

滑鼠左鍵放開後,此時會出現指定巨集的視窗,選擇剛剛建立好的test巨集→確定

 

 

接下來就會出現一個按鈕,在按鈕上按下右鍵,再點一下按鈕即可更新按鈕上面的字。

  

 

按下去後就會去呼叫剛剛建立的test功能(訊息彈窗)

 

 

最後執行結果如下圖:

 

 

 

Yiru@Studio - 關於我 - 意如