我們在製作工資條的時候,已經宣告過變量了,具體可參閱
Excel VBA(5) – 一鍵製作工資條
那篇主要從應用角度寫,為了讓大家對 VBA 程式設計有個總體的概念,所以變數宣告部分一筆帶過,沒有詳細展開。
今天就來說說變數宣告那些事。
1. 什麼是變數?
與任何程式語言一樣,變數和常量是儲存資料的不同“容器”
顧名思義,變數的資料是可以更換的
而常量的資料是固定不變的
2. 宣告變數
既然變數是可以自定義的,我們在使用之前就要對它進行宣告。打個比方,擺婚宴就是為了向親朋好友宣告:我結婚了
VBA 的變數宣告格式為:
Dim 變數名 As 資料型別
變數名必須以字母或漢字開頭,不能包含特殊字元和空格
變數名最長不得超過 255 字元(超過 255 字元的,難道貴司以程式碼長短考核 KPI 嗎?)
3. VBA 的資料型別
4. 宣告多個變數
可以寫在同一個 Dim 後面,變數名之間用逗號隔開,例如
Dim i As Integer, j As Long
也可以用不同的 Dim 語句宣告,例如
Dim i As Integer
Dim j As Long
5. 如果不宣告變數
不宣告變數型別的話,預設為 Variant 型別
Variant 為變體型,可以根據需要的資料型別改變自身型別與之匹配
6. 為什麼要宣告變數
既然有 72 般變化的 Variant 型別,為什麼還要宣告變數?
因為 Variant 佔用的儲存空間較大,無論程式執行速度還是儲存空間,都不最佳化。所以如非必要,請不要免去宣告變數步驟
7. 強制宣告變數
既然宣告變數那麼重要,我們能否強制?
可以在模組的第一句輸入如下程式碼:
Option Explicit
請從現在開始,養成強制宣告變數的習慣,當你將來程式碼越寫越多,定會感激我
也可以在 VBE 的視窗中點選“工具”——>“選項”——>勾選“要求變數宣告”,對所有模組自動強制變數宣告
在強制宣告變數的模組中,如果忘記宣告變數,執行程式時,會提示編譯錯誤:變數未定義
8. 變數的作用域:
9. 給變數賦值
把資料儲存到變數裡,稱為給變數賦值
語句為:
[Let] 變數名稱 = 資料
Let 可以省略
10. 給常量的宣告及賦值
常量不僅需要宣告,還要在宣告的同時就賦值
賦值以後的常量不能再重新賦值
語句為:
Const 變數名稱 As 資料 = 數值
11. 常量的作用域:
Excel學習世界
轉發、在看也是愛!