※より実装に近く表示させる為、コードの改行を避けています。スマホ等で閲覧される際は向きを変えてご覧ください。
※実装するバージョンによってはバージョンアップの仕様により動作しないコードもあります。実装には動作確認の上ご使用下さい。
Option Explicit
Sub TypeNameFunction()
'***************************
'変数の型を取得する
'***************************
Dim vrnTest(6) As Variant, i As Byte
vrnTest(1) = 123456
vrnTest(2) = 12.34
vrnTest(3) = "ABCD"
vrnTest(4) = CDate("2009/01/01 12:12:12")
vrnTest(5) = 1
vrnTest(6) = True
For i = 1 To 6
Debug.Print TypeName(vrnTest(i))
Next i
'vrnTest(1)=Long
'vrnTest(2)=Double
'vrnTest(3)=String
'vrnTest(4)=Date
'vrnTest(5)=Integer
'vrnTest(6)=Boolean
'TypeName 関数によって次のいずれかの文字列が返されます。
'---------------------------------------------------------
'文字列 変数
'---------------------------------------------------------
'Byte バイト型 (Byte)
'Integer 整数型 (Integer)
'Long 長整数型 (Long)
'Single 単精度浮動小数点数型 (Single)
'Double 倍精度浮動小数点数型 (Double)
'Currency 通貨型 (Currency)
'Decimal 10 進数型
'Date 日付型(Date)
'String 文字列型 (String)
'Boolean ブール型 (Boolean)
'Error エラー値
'Empty 未初期化
'Null 無効な値
'Object オブジェクト
'Unknown オブジェクトの種類が不明なオブジェクト
'Nothing オブジェクトを参照していないオブジェクト変数
End Sub
|
VarType 関数 変数の内部処理形式を表す整数型 (Integer) の値を返します。
|
定数 |
値 |
内容 |
vbEmpty |
0 |
Empty 値 (未初期化) |
vbNull |
1 |
Null 値 (無効な値) |
vbInteger |
2 |
整数型 (Integer) |
vbLong |
3 |
長整数型 (Long) |
vbSingle |
4 |
単精度浮動小数点数型 (Single) |
vbDouble |
5 |
倍精度浮動小数点数型 (Double) |
vbCurrency |
6 |
通貨型 (Currency) |
vbDate |
7 |
日付型 (Date) |
vbString |
8 |
文字列型 (String) |
vbObject |
9 |
オブジェクト |
vbError |
10 |
エラー値 |
vbBoolean |
11 |
ブール型 (Boolean) |
vbVariant |
12 |
バリアント型 (Variant) (バリアント型配列にのみ使用) |
vbDataObject |
13 |
非OLE オートメーション オブジェクト |
vbDecimal |
14 |
10 進数型 |
vbByte |
17 |
バイト型 (Byte) |
vbUserDefinedType |
36 |
ユーザー定義型を含むバリアント型 |
vbArray |
8192 |
配列 |
メモ
これらの定数は、Visual Basic で定義されているものです。コードの中の任意の場所で、実際の値の代わりに使用できます。
解説
VarType 関数は、定数 vbArray の値 (8192) を単独では返しません。この値は常にデータ型を表す他の値と加算されて返され、指定した変数がそのデータ型の要素を持つ配列であることを示します。定数 vbVariant は、常に定数 vbArray と加算されて返され、指定した変数がバリアント型の配列であることを示します。たとえば、整数型の要素を持つ配列を指定したときは、vbInteger
+ vbArray として計算された値 8194 が返されます。オブジェクトが既定プロパティを持つとき、VarType (object) はその既定プロパティの型を返します。
|
|
その他のチェック関数
|
IsArray 関数 |
変数が配列であるかどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsDate 関数 |
式を日付に変換できるかどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsEmpty 関数 |
変数が Empty 値かどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsMissing 関数 |
プロシージャに省略可能なバリアント型 (Variant) の引数が渡されたかどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsError 関数 |
式がエラー値かどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsNull 関数 |
式に Null 値が含まれているかどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsNumeric 関数 |
式が数値として評価できるかどうかを調べ、結果をブール型 (Boolean) で返します。 |
IsObject 関数 |
識別子がオブジェクト変数を表しているかどうかを示すブール型 (Boolean) の値を返します。 |
|
|