iT邦幫忙

0

【Excel VBA入門】2、變數

  • 分享至 

  • xImage
  •  

變數的概念

把變數想像成一個物件下的屬性,變數有可能在程式執行中發生變化,例如x=1,那過程中可能會發生加減,影響最後x的結果。
與變數相對的概念是「常數」,常數在程式設計當中不會去更改它。

變數

命名規則

  1. 不可使用VBA保留字,例如:Sub。
  2. 不可使用@、&、$、-等這類符號,但可以使用半形數字、英文、底線。
  3. 名稱開頭不可以以數字或底線開頭,例如:_test、1test。
  4. 不可使用內建巨集名稱。
  5. 名稱長度必須低於255個字元。 (全形是2個字元)

型態

  • String
  • Integer
  • Boolena
  • Byte
  • Single
  • double
  • Date
  • Object

範例1

Sub Square()

 Dim Height As Integer
 Dim Width As Integer
 Dim area As Integer

 Height = 10
 Width = 5
 area = Height * Width

 MsgBox area

End Sub

在VBA中,如果你使用未宣告的變數,VBA 會將其視為新的 Variant 類型的變數。 這意味著,如果你沒有使用 Dim 語句明確宣告變量,VBA 會隱含地將其宣告為 Variant 類型。 雖然 Variant 類型的變數在某些情況下很方便,但在大多數情況下,最好明確聲明變數的資料類型。 這有助於提高程式碼的可讀性,並幫助在編寫和偵錯程式碼時捕獲潛在的錯誤。

在你的程式碼中,如果你沒有使用 Dim 來宣告 Height、Width 和 area,那麼這些變數會被隱式宣告為 Variant 類型。 但由於你在後面的程式碼中將它們用作整數類型進行乘法運算,VBA 可能會產生類型不匹配的錯誤或意外的行為。 因此,最好明確聲明這些變數的類型,以避免這種類型的錯誤。

變數的算術邏輯

範例1

Sub test()
 Dim x As Integer
 x = 1
 x = x + 1
 MsgBox x

End Sub

範例2

Sub test()
 Dim x As Integer
 x = 1
 x = x + 1
 MsgBox x '2
 
 x = x * 5
 MsgBox x '10
 
 x = x / 2
 MsgBox x '5
 
 x = x - 5
 MsgBox x '0
 
 
End Sub

單行寫法

Sub test()

 Dim x As Integer: x = 1: x = x + 1: MsgBox x

End Sub

更多運算子

  • 指數:^
  • 取商數:\
  • 取餘數:Mod

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言