VBA靜態變數與常量

來源:互聯網
上載者:User

VBA代碼中包含變數、運算子和語句。變數在代碼中起到互交與串連的作用。變數從建立為合適的對象與資料類型,到初始化,再通過運算子計算或執行語句修改,來完成整個互交的過程。

聲明變數的關鍵詞是Dim,其文法是

Dim [WithEvents] varname[([subscripts])] [As [New] type] [, [WithEvents] varname[([subscripts])] [As [New] type]] . . .

Dim語句的文法包含下面部分:

部分 描述

WithEvents 可選的。關鍵字,說明 varname 是一個用來響應由ActiveX 對象觸發的事件的物件變數。只有在類別模組中才是合法的。使用WithEvents,可以聲明任意個所需的單變數,但不能使用 WithEvents 建立數組。New 和 WithEvents 不能一起使用。

varname 必需的。變數的名稱;遵循標準的變數命名規範。

subscripts 可選的。陣列變數的維數;最多可以定義 60 維的多維陣列。subscripts 參數使用下面的文法:

[lower To] upper [, [lower To] upper] . . .

如果不顯式指定 lower,則數組的下界由 Option Base 語句控制。如果沒有使用Option Base 語句,則下界為 0。

New 可選的。可隱式地建立對象的關鍵字。如果使用 New 來聲明物件變數,則在第一次引用該變數時將建立該對象的執行個體,因此不必使用 Set 語句來給該對象引用賦值。New 關鍵字不能聲明任何內部資料類型的變數,以及從屬對象的執行個體,也不能與 WithEvents 一起使用。

type 可選的。變數的資料類型;可以是 Byte、 Boolean 、Integer、Long、Currency、Single、Double、Decimal(目前尚不支援)、Date、String(對變長的字串)、String * length (對定長的字串)、Object、Variant、使用者定義型別、或物件類型。所聲明的每個變數都要一個單獨的 As type 子句。

而在聲明變數或建立變數的同時,最好先考慮好變數用什麼資料類型,下面 表格顯示所支援的資料類型,以及儲存空間大小與範圍。

資料類型 儲存空間大小 範圍

Byte 1 個位元組 0 到 255

Boolean 2 個位元組 True 或 False

Integer 2 個位元組 -32,768 到 32,767

Long

(長整型) 4 個位元組 -2,147,483,648 到 2,147,483,647

Single

(單精確度浮點型) 4 個位元組 負數時從 -3.402823E38 到 -1.401298E-45;正數時從 1.401298E-45 到 3.402823E38

Double

(雙精確度浮點型) 8 個位元組 負數時從 -1.79769313486231E308到-4.94065645841247E-324;正數時從4.94065645841247E-324 到 1.79769313486232E308

Currency

(變比整型) 8 個位元組 從 -922,337,203,685,477.5808 到 922,337,203,685,477.5807

Decimal 14 個位元組 沒有小數點時為 +/-79,228,162,514,264,337,593,543,950,335,而小數點右邊有 28 位元時為 +/-7.9228162514264337593543950335;最小的非零值為 +/-0.0000000000000000000000000001

Date 8 個位元組 100 年 1 月 1 日 到 9999 年 12 月 31 日

Object 4 個位元組 任何 Object 引用

String

(變長) 10 位元組加字串長度 0 到大約 20 億

String

(定長) 字串長度 1 到大約 65,400

Variant

(數字) 16 個位元組 任何數字值,最大可達 Double 的範圍

Variant

(字元) 22 個位元組加字串長度 與變長 String 有相同的範圍

使用者自訂

(利用 Type) 所有元素所需數目 每個元素的範圍與它本身的資料類型的範圍相同。

其中的Variant是個很特殊的資料類型,它能表示除固定長度之外的所有值,並可以通過VarType來返回其資料子類型。其文法如下:

VarType(varname)

必要的 varname 參數是一個 Variant,包含使用者定義型別變數之外的任何變數。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.