2012年12月11日 星期二

Excel VBA 基礎:宣告變數

變數是執行程式時存放值的地方。變數可以在程式碼中自由使用,不過通常我們會在程式開頭就對程式內的變數先行「宣告」。如下範例

Dim myName
Dim myNickName As String
Dim myDate As Date
Dim myAge As Integer
Dim myHeight As Single, myWeight As Single

myName = "豬腦爸"
myNickName = "D NOW BA"
myDate = #11/19/1981#
myAge = 70
myHeight = 162.55
myWeight = 61.3

列1~列5 就是在宣告變數,列7~列12就是將變數賦值。完整宣告變數方式是:

Dim 變數名稱 As 資料型態

變數名稱可以自訂,沒有太大的限制,不過儘量不要和內建的函數、物件名稱重複,而變數名稱的命名也有人有制定參考標準,可參考
微軟建議的Visual Basic編碼慣例Visual Basic命名慣例
http://dnowba.blogspot.tw/2011/10/visual-basicvisual-basic.html

資料型態,和微軟的SQL資料庫的定義方式大致上是相仿的,可以參考
資料型別
http://dnowba.blogspot.tw/2011/10/blog-post_18.html

如果像程式碼列1省略資料型態,那麼變數就是自由型態 (Variant) ,不過建議對於變數的值有明確的認知的話,最好還是指定資料型態。指定資料型態比較可以有效的利用記憶體空間。例如列4和列5,年齡、身高都是數字,不過年齡一般來說是整數,所以用只佔記憶2個位元組的integer;而身高、體重一般表示方式可能會有小數,就用佔8bytes的單精度浮點數Single。

要在1行內宣告2個以上的變數時
範例中,因為myHeight和myWeight 都要宣告資料型態為Single,所以可以寫成  Dim myHeight As Single, myWeight As Single,注意不可寫成
Dim myHeight , myWeight As Single,否則 myHeight 會被當成Variant

沒有留言:

張貼留言

Related Posts Plugin for WordPress, Blogger...
// Dnow Function