ExcelでVBAを使っているときに、「今変数の中に入っているのは何のデータ型かな?」と思うときがあります。
変数に入っているデータのデータ型を調べるには「TypeName」関数を使います。
その方法を記録します。
下図はExcel2016です。
< スポンサーリンク >
TypeName関数の構文
変数に関する情報を提供する文字列型(String)を返します。
TypeName(変数)
変数=必須。ユーザー定義型の変数以外の任意の変数を含むバリアント型(Variant)の値です。
返される文字列型
返される文字列 | |
---|---|
object type | objecttype型のオブジェクト |
Byte | バイト型 |
Integer | 整数型 |
Long | 長整数型 |
Single | 単精度浮動小数点数型 |
Double | 倍精度浮動小数点数型 |
Currency | 通貨型 |
Decimal | 10進型 |
Date | 日付型 |
String | 文字列型 |
Boolean | ブール型 |
Error | エラー値 |
Empty | 初期化されていません |
Null | 有効な値がありません |
Object | オブジェクト |
Unknown | 不明な型のオブジェクト |
Nothing | オブジェクトを参照しないオブジェクト変数 |
変数が配列の場合は、返すことができる文字列(またはバリアント型の値)の空のかっこを付けた文字列が返されます。
例
「a」という変数に数値や文字列、日付、論理値を入れてイミディエイトウィンドウに表示してみます。
Sub test()
Dim a As Variant
a = 123
Debug.Print a & ” : ” & TypeName(a)
a = 12.34
Debug.Print a & ” : ” & TypeName(a)
a = “aiueo”
Debug.Print a & ” : ” & TypeName(a)
a = #11/14/2019#
Debug.Print a & ” : ” & TypeName(a)
a = True
Debug.Print a & ” : ” & TypeName(a)
End Sub
変数のデータ型が表示されました。
こんな記事も書いています