TypeName【タイプネーム】関数
オブジェクトや変数の種類を調べるには、TypeName【タイプネーム】関数を使用します。
TypeName【タイプネーム】関数の書式と引数の説明
TypeName(VarName)
【戻り値】 文字列型 (String)
- VarName【バーネーム】(必須)
種類を判別したい、オブジェクトやバリアント型またはオブジェクト型の変数を指定します。
※引数VarName【バーネーム】にバリアント型の変数を指定した場合は、変数に代入されているデータやオブジェクトの種類を表す文字列を返します。何も代入されていない場合は「Empty【エンプティ】」を返します。
※引数VarName【バーネーム】にオブジェクト型の変数を指定した場合は、変数に代入されているオブジェクトの種類を表す文字列を返します。何も代入されていない場合は「Nothing【ナッシング】」を返します。
※Empty【エンプティ】とは、数値の場合は「0」を表し、文字列の場合は「長さ0の文字列」を表します。
※Nothing【ナッシング】とは、オブジェクト型変数にオブジェクトが格納されていない状態を表します。
変数の種類を表す主な戻り値
文字列 | 内容 |
---|---|
Integer | 整数型 |
Long | 長整数型 |
Single | 単精度浮遊小数点数型 |
Double | 倍精度浮遊小数点数型 |
Date | 日付型 |
String | 文字列型 |
Boolean | ブール型 |
Error | エラー値 |
Empty | バリアント型の初期値 |
Null | 無効な値 |
オブジェクトの種類を表す主な戻り値
文字列 | 内容 |
---|---|
WorkBook | ブック |
Worksheet | シート |
Range | セル |
Chart | グラフ |
TextBox | テキストボックス ActiveXコントロール |
Label | ラベル ActiveXコントロール |
Commmand Button | コマンドボタン ActiveXコントロール |
Object | オブジェクト |
UnKnown | 種類が不明なオブジェクト |
Nothing | オブジェクト変数の初期化 |
引数VarName【バーネーム】に配列変数を指定した場合は、戻り値に「()」が付きます。例えば、文字列型の配列変数の場合は「String()」が返ります。
コード例
Sub 種類() Dim 空 As Variant Dim 文字 As Variant Dim 数値 As Variant Dim 空2 As Object Dim ブック As Object Dim セル As Object 文字 = "ExcelVBA" 数値 = 12345 Set ブック = ActiveWorkbook Set セル = Range("A1") MsgBox _ "空は" & TypeName(空) & vbCrLf & _ "文字は" & TypeName(文字) & vbCrLf & _ "数値は" & TypeName(数値) & vbCrLf & _ "空2は" & TypeName(空2) & vbCrLf & _ "ブックは" & TypeName(ブック) & vbCrLf & _ "セルは" & TypeName(セル) End Sub
実行結果
VarType【バ-タイプ】関数
バリアント型変数の内部処理形式を調べるには、VarType【バ-タイプ】関数を使用します。
VarType【バ-タイプ】関数の書式と引数の説明
VarType(varname)
【戻り値】 整数型 (Integer)
- VarName【バーネーム】(必須)
任意の変数名を指定します。
バリアント型変数には、すべてのデータ型の値を格納できますが、格納された値に合わせて内部で自動的に型変換が行われ
内部処理形式が決まります。その内部処理形式を調べるのがValType【バータイプ】関数です。
TypeName【タイプネーム】関数は、変数の種類を表す「文字列」を返しますが、VarType【バータイプ】関数は、内部処理形式を表す「整数値」を返します。
VarType関数が返す主な整数値とその内容
値 | 定数 | 内容 |
---|---|---|
0 | vbEmpty | Empty 値 (未初期化) |
1 | vbNull | Null 値 (無効な値) |
2 | vbInteger | 整数型 |
3 | vbLong | 長整数型 (Long) |
4 | vbSingle | 単精度浮動小数点数型 (Single) |
5 | vbDouble | 倍精度浮動小数点数型 (Double) |
6 | vbCurrency | 通貨型 (Currency) |
7 | vbDate | 日付型 (Date) |
8 | vbString | 文字列型 |
9 | vbObject | オートメーション オブジェクト |
10 | vbError | エラー型 |
11 | vbBoolean | ブール型 (Boolean) |
12 | vbVariant | バリアント型 (Variant) (バリアント型配列にのみ使用) |
13 | vbDataObject | 非オートメーション オブジェクト |
17 | vbByte | バイト型 |
8192 | vbArray | 配列 (Array) |
※配列の場合は、他のデータ型を表す整数値との合計値が返されます。例えば、文字列型の配列の場合は、「8(vbString)」+「8192(vbArray)」=「8200」が返されます。
以上で、TypeName【タイプネーム】関数 VarType【バータイプ】関数についての解説を終了します。ありがとうございました。
データ型を操作する関数一覧表
関数名がリンクになっていて詳細説明ページが開きます
関数名 | 内容 |
---|---|
CByte | 数値や文字列をバイト型に変換 |
CBool | 数値や文字列をブール型に変換 |
CInt | 数値や文字列を整数型の値に変換 |
CSng | 数値や文字列を単精度浮動小数点数型に変換 |
CDbl | 数値や文字列を倍精度浮遊小数点数型に変換 |
CCur | 数値や文字列を通貨型に変換 |
CStr | 数値や日付リテラルを文字列型の値に変換 |
CLng | データ型を長整数型に変換 |
CDate | データ型を日付型に変換 |
Val | 文字列を数値に変換 |
IsNumeric | データが数値かを判定する |
IsDate | データが日付や時刻データかを判定する |
IsArray | 変数が配列変数かを判定する |
IsNull | 値がNullかを判定する |
IsEmpty | 値がEmptyかを判定する |
IsObject | 値がオブジェクトかを判定する |
IsError | 値がエラー値かを判定する |
TypeName | オブジェクトや変数の種類を調べる |
VarType | 変数の内部処理形式を調べる |