VarType 関数

変数のサブタイプ、またはオブジェクトの既定のプロパティの型を示す整数型 (Integer)を返します。

構文

VarType(varname)

必要な varname引数は、ユーザー定義型の変数を除く任意の変数を含む Variant です。

戻り値

次のいずれかの定数またはそれらの数の合計が返されます。

定数 説明
vbEmpty 0 (未初期化)
vbNull 1 Null (有効なデータではない)
vbInteger 2 Integer
vbLong 3 長整数
vbSingle 4 単精度浮動小数点数
vbDouble 5 倍精度浮動小数点数
vbCurrency 6 通貨値
vbDate 7 日付値
vbString 8 String
vbObject 9 Object
vbError 10 エラー値
vbBoolean 11 ブール値
vbVariant 12 バリアント型 ( Variant ) (バリアントの 配列でのみ使用される)
vbDataObject 13 データ アクセス オブジェクト
vbDecimal 14 10 進値
vbByte 17 バイト値
vbLongLong 20 LongLong 整数 (64 ビット プラットフォームでのみ有効)
vbUserDefinedType 36 ユーザー定義型を含むバリアント
vbArray 8192 配列 (この関数によって返されたときに常に別の定数に追加されます)

注:

これらの定数は Visual Basic for Applications により指定されます。 これらの名前は、実際の値の代わりにコードのどの部分でも使用できます。

解説

オブジェクトが渡され、既定のプロパティがある場合、 VarType(object) はオブジェクトの既定のプロパティの型を返します。

VarType 関数は、vbArray の値を単独で返しません。 特定の型の配列を示すために、常に他の値に追加されます。 たとえば、整数型の配列で返される値は vbInteger + vbArray という計算になり、8194 です。

定数 vbVariant は、常に vbArray と共に返され、 VarType関数の引数がバリアント型の配列であることを示します。

この例では 、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 のサポートおよびフィードバックを参照してください。