共用方式為


VarType 函式

回傳一個整 ,表示 變數的子型別,或物件預設 屬性的型別。

語法

VarType (varname)

所需的 varname參數 是一個包含任意變數的 變體 ,除了使用者 定義型別的變數外。

傳回值

會回傳以下其中一個常數或其中若干常數的求和。

常數 描述
vbEmpty 0 空的 (未初始化的)
vbNull 1 Null (沒有有效資料)
vbInteger 2 整數
vbLong 3 長整數
vb單曲 4 單精度浮點數
vb雙倍 5 雙精度浮點數
vb貨幣 6 貨幣價值
vbDate 7 日期價值
vb弦 8 字串
vb物件 9 物件
vb錯誤 10 誤差值
vbBoolean 11 布林值
vb變體 12 變體 (僅用於變 體陣列)
vbDataObject 13 資料存取物件
vb十進制 14 十進位值
vbByte 17 位元組值
vbLongLong 20 LongLong 整數 (僅適用於 64 位元平台)
vbUserDefinedType 36 包含使用者定義型別的變體
vbArray 8192 陣列 (在這個函式回傳時,總是會加到另一個常數上)

注意事項

這些常數是由 Visual Basic for Applications 所指定。 這些名稱可以在程式碼中任何地方使用,取代實際的數值。

註解

如果傳遞物件且有預設屬性, VarType (物件) 回傳該物件預設屬性的類型。

VarType 函式本身從不會回傳 vbArray 的值。 它總是會被加入其他值,以表示特定類型的陣列。 例如,整數陣列回傳的值會以 vbInteger + vbArray 或 8194 計算。

常數 vbVariant 僅與 vbArray 一起回傳,以表示 VarType 函式的參數為 Variant 型別的陣列。

範例

此範例使用 VarType 函式來判斷不同變數的子型別,甚至在一個案例中,還決定了物件預設屬性的型別。

Dim MyCheck
Dim IntVar, StrVar, DateVar, AppVar, ArrayVar
' Initialize variables.
IntVar = 459: StrVar = "Hello World": DateVar = #2/12/1969#
Set AppVar = Excel.Application
ArrayVar = Array("1st Element", "2nd Element")
' Run VarType function on different types.
MyCheck = VarType(IntVar)   ' Returns 2.
MyCheck = VarType(DateVar)  ' Returns 7.
MyCheck = VarType(StrVar)   ' Returns 8.
MyCheck = VarType(AppVar)   ' Returns 8 (vbString)
                            ' even though AppVar is an object.
MyCheck = VarType(ArrayVar) ' Returns 8204 which is
                            ' `8192 + 12`, the computation of
                            ' `vbArray + vbVariant`.

另請參閱

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應