データ型を調べて、そのデータ型を示す数値を返す(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 |
実行結果
関連記事
-
-
VBA の演算子(算術演算子)
算術演算子 算術演算を行うときに使用する演算子です。 ^(べき乗)、*(積)、/ …
-
-
オートシェイプの種類を表す定数(MsoAutoShapeType 列挙型)
MsoAutoShapeType 列挙型 オートシェイプオブジェクトの図形の種類 …
-
-
ポイント単位の値に変換(CentimetersToPoints,InchesToPoints)
CentimetersToPoints メソッド センチメートル単位の値をポイン …
-
-
フォントサイズ(Size プロパティ・StandardFontSize プロパティ)
フォントサイズを取得・設定する(Size プロパティ) Size プロパティは、 …
-
-
四捨五入・切り上げ・切り捨て・丸め(Round 関数 他)
Round 関数(丸め)の使い方 【書式】 value = Round ( ex …
-
-
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)
カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …
-
-
日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
DateDiff 関数の使い方 【書式】 result = DateDiff ( …
-
-
引数が省略されたかどうかをチェックする( IsMissing 関数 )
IsMissing 関数の使い方 【書式】 result = IsMissing …
-
-
文字列:文字列の長さを取得( Len 関数、LenB 関数 )
Len 関数(文字列の長さを取得) 【書式】 result_len = Len …
-
-
文字列:文字列の空白を削除(Trim 関数, LTrim関数, RTrim関数)
Trim 関数・LTrim 関数・RTrim 関数の使い方 【書式】 <先頭と末 …