サイトについて      連絡先   検索

VBA TypeName 関数

はじめに

Excel VBA マクロの TypeName 関数を紹介します。

TypeName 関数は、指定した変数の型名を返します。

Variant や Object 型に設定されている型を調べたいときに使用します。

  • 目次
    • 構文
    • 解説
    • 使用例

構文

TypeName()
の型名を取得します。

引数「値」変数や値を指定します。
戻り値の型文字列型 (String)

引数「値」と戻り値の例

戻り値
100Integer
#12/31/2000#Date
"Tips"String
TrueBoolean
CVErr(2042)Error
EmptyEmpty
NullNull
NothingNothing
不明な値Unknown

配列を指定すると型の後ろに()を付けて返します。

戻り値
Integer の配列Integer()
Date の配列Date()
String の配列String()
Variant の配列Variant()
Object の配列Object()

解説

引数「値」の型名 (Integer 型なら Integer) を文字列で返します。

Variant 型や Object 型のときは、それに入っている値の型名を返します。

引数「値」が配列なら型名()のように、後ろに()を付けて返します。

Variant 型や Object 型の配列または、その中に配列が入っているときは値に関係なくVariant()Object()を返します。

使用例


Dim s As String
Dim v As Variant

v = 100
s = TypeName(v)
Debug.Print(s) ' Integer

v = 1.5
s = TypeName(v)
Debug.Print(s) ' Double

v = "Tips"
s = TypeName(v)
Debug.Print(s) ' String

v = Now
s = TypeName(v)
Debug.Print(s) ' Date

v = True
s = TypeName(v)
Debug.Print(s) ' Boolean

v = CVErr(2042)
s = TypeName(v)
Debug.Print(s) ' Error

Dim vEmpty As Variant
s = TypeName(vEmpty)
Debug.Print(s) ' Empty

Dim o As Object
s = TypeName(o)
Debug.Print(s) ' Nothing

Set o = Worksheets(1)
s = TypeName(o)
Debug.Print(s) ' Worksheet
  
v = Array(1, 2, 3)
s = TypeName(v)
Debug.Print(s) ' Variant()

Dim i(10) As Integer
s = TypeName(i)
Debug.Print(s) ' Integer()

Dim vs(10) As Variant
vs(0) = 10
s = TypeName(vs)
Debug.Print(s) ' Variant()
  • 目次
    • 構文
    • 解説
    • 使用例