共用方式為


VarType 函式

會傳回 Integer ,指出 變數的子類型,或對象的預設 屬性類型。

語法

VarType (varname)

必要的 varname變數是包含任何變數的 Variant,但使用者定義型別的變數除外。

傳回值

會傳回下列其中一個常數或其中一個常數的加總。

常數 描述
vbEmpty 0 空白 (未初始化)
vbNull 1 Null (沒有有效的數據)
vbInteger 2 整數
vbLong 3 長整數
vbSingle 4 單精度浮點數
vbDouble 5 雙精確度浮點數
vbCurrency 6 貨幣值
vbDate 7 日期值
vbString 8 字串
vbObject 9 物件
vbError 10 錯誤值
vbBoolean 11 布爾值
vbVariant 12 Variant (僅與變 體數位搭配使用)
vbDataObject 13 數據存取物件
vbDecimal 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 支援與意見反應