共用方式為


VARIANT 資料類型

Variant 資料類型是未明確宣告為其他某些類型 (使用 DimPrivatePublicStatic陳述式) 之所有變數資料類型

Variant 資料類型沒有類型宣告字元

Variant 是特殊的資料類型,它可以包含固定長度 String 資料之外的各種資料。 (Variant 類型現在支援使用者定義類型)。Variant 也可以包含特殊值:EmptyErrorNothingNull。 您可以使用 VarType 函數或 TypeName 函數來判斷該如何處置 Variant 中的資料。

使用 VarType 函數來測試 Variant 中存放的資料是哪種類型。

負數值的數值資料可以是介於 -1.797693134862315E308 到 -4.94066E-324 之間的任何整數或實數值;正數值則是介於 4.94066E-324 到 1.797693134862315E308 之間。

一般而言,數值的 Variant 資料會保留在 Variant 之內的原始的資料類型中。 例如,如果您將 Integer 指派給 Variant,後續作業會將 Variant 視為 Integer。 不過,如果您針對包含 ByteIntegerLongSingleVariant 執行算數運算,且結果超出原始資料類型的正常範圍,系統會將 Variant 內的結果提升到下一個較大的資料類型。 Byte 會提升為 IntegerInteger 會提升為 Long,而 LongSingle 則會提升為 Double

當含有 CurrencyDecimalDouble 值的 Variant 變數超過各自的範圍時,錯誤便會發生。

使用 Variant 資料類型來代替任何資料類型,以用更有彈性的方法運用資料。 如果 Variant 變數的內容是數字,它們可能是數字的字串表示或實際值,視內容而定。 例如:

Dim MyVar As Variant 
MyVar = 98052 

在上述範例中,MyVar 包含數值表示 — 實際值 98052。 對於包含可轉譯為數值之數值或字串資料的 Variant 變數,算數運算子能發揮正常作用。 如果您使用 + 運算子將 MyVar 加入另一個含有數值的 Variant數值類型的變數,結果將會是算術總和。

Empty 值代表尚未初始化 (已指派初始值) 的 Variant 變數。 如果將含有 EmptyVariant 用在數字內容中,它會是 0;如果用在字串內容中,它會是零長度字串 ("")。

請勿將 EmptyNull 混淆。 Null 代表故意不含有效資料的 Variant 變數。

Variant 中,Error 是用來指出程序中發生錯誤情況的特殊值。 不過,這裡的錯誤情況不像其他種類的錯誤,一般的應用程式層級錯誤處理並不會發生。 這可讓您或應用程式本身根據錯誤值來採取某些替代動作。 Error 值會在您使用 CVErr 函數將實數轉換為錯誤值時建立。

另請參閱

支援和意見反應

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