データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)
2015/08/26
VarType 関数 の使い方
VarType 関数は、引数に、データ型を調べたい値や変数を指定するとそのデータ型を示す数値を返します。
result = VarType ( varname )
引数・戻り値
- varname ・・・ 調べたい値や変数を指定します。
- result ・・・ 引数 varname のデータ型を表す数値
(戻り値は、以下「VarType 関数の戻り値一覧」を参照)。
VarType 関数の戻り値一覧
戻り値 (数値) |
定数 | 内容 |
0 | vbEmpty | Empty 値 (未初期化) |
1 | vbNull | Null 値 (無効な値) |
2 | vbInteger | 整数型 (Integer) |
3 | vbLong | 長整数型 (Long) |
4 | vbSingle | 単精度浮動小数点数型 (Single) |
5 | vbDouble | 倍精度浮動小数点数型 (Double) |
6 | vbCurrency | 通貨型 (Currency) |
7 | vbDate | 日付型 (Date) |
8 | vbString | 文字列型 (String) |
9 | vbObject | オブジェクト |
10 | vbError | エラー値 |
11 | vbBoolean | ブール型 (Boolean) |
12 | vbVariant | バリアント型 (Variant) (バリアント型配列にのみ使用) |
13 | vbDataObject | 非OLE オートメーション オブジェクト |
14 | vbDecimal | 10 進数型 |
17 | vbByte | バイト型 (Byte) |
20 | vbLongLong | LongLong 型の整数 (64 ビット プラットフォーム上でのみ有効) |
36 | vbUserDefinedType | ユーザー定義型を含むバリアント型 |
8192 | vbArray | 配列 |
引数 varname が、バリアント型変数の場合は、内部処理形式を識別する数値を返します。
VarType 関数は、定数 vbArray の値 (8192) を単独では返しません。この値は常にデータ型を表す他の値と加算されて返され、指定した変数がそのデータ型の要素を持つ配列であることを示します。
(例)整数型の要素を持つ配列を指定した場合
vbInteger + vbArray として計算された値 8194 が返されます。
定数 vbVariant は、常に定数 vbArray と加算されて返され、指定した変数がバリアント型の配列であることを示します。 ⇒ vbVariant + vbArray として計算された値 8204 が返されます。
VarType 関数 の使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
Sub Sample_vartype() Dim myStr As String, myInt As Integer, myLng As Long Dim myDbl As Double, mySgl As Single, myBol As Boolean Dim myObj As Object, myDat As Date, myCur As Currency Dim myByt As Byte, myWks As Worksheet Dim myVal1, myVal2, myEmp, myNull Dim myArray1() As Variant, myArray2() As Long Set myWks = ActiveSheet myVal1 = 123 myVal2 = CDec(12500) myNull = Null Debug.Print VarType(myEmp) 'Empty(未定義) Debug.Print VarType(myNull) 'Null 値 Debug.Print VarType(myInt) '整数型(Integer) Debug.Print VarType(myVal1) '整数型(Integer) Debug.Print VarType(myLng) '長整数型(Long) Debug.Print VarType(mySgl) '単精度浮動小数点型(Single) Debug.Print VarType(myDbl) '倍精度浮動小数点型(Double) Debug.Print VarType(myCur) '通貨型(Currency) Debug.Print VarType(myDat) '日付型(Date) Debug.Print VarType(myStr) '文字列型(String) Debug.Print VarType(myObj) 'オブジェクト Debug.Print VarType(myWks) 'オブジェクト(WorkSheet) Debug.Print VarType(myBol) 'ブール型(Boolean) Debug.Print VarType(myVal2) '10進数型 Debug.Print VarType(myByt) 'バイト型(Byte) Debug.Print VarType(myArray1) '配列(バリアント型) Debug.Print VarType(myArray2) '配列(長整数型) End Sub |
実行結果
関連記事
-
-
ユーザー定義関数:セルを取得する(ThisCell プロパティ)
入力されたセルを取得する ワークシート上で使用する Function プロシージ …
-
-
色の設定(ColorIndex プロパティ・Colors プロパティ)
ColorIndex プロパティ ColorIndex プロパティは、指定したオ …
-
-
Split 関数(文字列型の一次配列を作成)
Split 関数の使い方 【書式】 myArray = Split ( expr …
-
-
出力位置、書き込み位置を設定(Tab 関数)
出力位置、書き込み位置を設定 Tab 関数 は、Print メソッド、または P …
-
-
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)
Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …
-
-
日付時刻:日付から曜日を取得( Weekday 関数、WeekdayName 関数 )
Weekday 関数(日付から曜日を表す数値を返す)の使い方 【書式】 week …
-
-
色の設定(Color プロパティ・RGB 関数)
Color プロパティ Color プロパティは、指定したオブジェクトの色を取得 …
-
-
変数がオブジェクト型かどうかをチェックする( IsObject 関数 )
IsObject 関数の使い方 【書式】 result = IsObject ( …
-
-
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)
カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …
-
-
VBA の演算子(演算子の優先順位)
演算子の優先順位 演算子の優先順位とは、1つの式の中に演算子が複数ある場合、どの …