構文
構文は以下の通りです。
TypeName(変数)
解説
TypeName関数は、引数として渡した変数のデータ型を戻り値(文字列)で返す関数です。例えば、数値、文字列、オブジェクトなど、変数がどのようなデータ型であるかを確認したいときに使います。これにより、プログラム内でのデータの種類を簡単にチェックすることができます。
【一般的な戻り値】
戻り値 | 内容 |
空 (Empty) | 変数に何も設定されていない場合 |
Null | 変数がNullである場合 |
Boolean | TrueまたはFalseの論理値 |
Byte | バイト型(0〜255の整数) |
Integer | 整数型(-32,768〜32,767) |
Long | 長い整数型(-2,147,483,648〜2,147,483,647) |
Single | 単精度浮動小数点数(小数点を含む数値) |
Double | 倍精度浮動小数点数(より大きな小数点を含む数値) |
Currency | 通貨型(小数点を含む正確な数値) |
Decimal | 十進型(正確な数値計算に使用) |
Date | 日付型 |
String | 文字列型 |
Object | オブジェクト型(Excelのオブジェクトなど) |
Error | エラー型 |
Nothing | オブジェクトに対してNothingが設定されている場合 |
Unknown | 未知のデータ型 |
Range | Excelのセル範囲を表すRangeオブジェクト |
Workbook | Excelのブックを表すWorkbookオブジェクト |
Worksheet | Excelのシートを表すWorksheetオブジェクト |
Variant | 変数が異なる型を含むことができるVariant型 |
Array | 配列型 |
【フォーム内コントロールの戻り値】
戻り値 | 内容 |
TextBox | テキスト入力用のコントロール → "TextBox" |
ComboBox | ドロップダウンリスト付きのテキスト入力コントロール → "ComboBox" |
ListBox | 複数の選択肢から選べるリストコントロール → "ListBox" |
CommandButton | ボタンコントロール → "CommandButton" |
Label | テキストラベルコントロール → "Label" |
CheckBox | チェックボックス(選択/非選択) → "CheckBox" |
OptionButton | ラジオボタン(複数の選択肢のうち1つを選択) → "OptionButton" |
ToggleButton | 切り替えボタン → "ToggleButton" |
Frame | 他のコントロールをグループ化するためのフレーム → "Frame" |
MultiPage | 複数ページを切り替えて表示できるタブ → "MultiPage" |
SpinButton | 数値を増減させるためのスピンボタン → "SpinButton" |
ScrollBar | スクロールバーコントロール → "ScrollBar" |
Image | 画像表示用のコントロール → "Image" |
RefEdit | 範囲を指定するためのコントロール → "RefEdit" |
プログラミング例
具体的なプログラミング例を紹介します。
Sub データ型の確認()
' 数値型の変数を作成
Dim 数値 As Integer
数値 = 100
' 文字列型の変数を作成
Dim 文字列 As String
文字列 = "こんにちは"
' オブジェクト型の変数を作成
Dim ワークブック As Workbook
Set ワークブック = ThisWorkbook
' それぞれのデータ型をTypeName関数で表示
MsgBox "数値のデータ型: " & TypeName(数値)
MsgBox "文字列のデータ型: " & TypeName(文字列)
MsgBox "ワークブックのデータ型: " & TypeName(ワークブック)
End Sub
' 数値型の変数を作成
Dim 数値 As Integer
数値 = 100
' 文字列型の変数を作成
Dim 文字列 As String
文字列 = "こんにちは"
' オブジェクト型の変数を作成
Dim ワークブック As Workbook
Set ワークブック = ThisWorkbook
' それぞれのデータ型をTypeName関数で表示
MsgBox "数値のデータ型: " & TypeName(数値)
MsgBox "文字列のデータ型: " & TypeName(文字列)
MsgBox "ワークブックのデータ型: " & TypeName(ワークブック)
End Sub
上記のプログラムでは、数値型、文字列型、オブジェクト型の3つの変数を作成しています。それぞれの変数のデータ型をTypeName関数を使って確認し、メッセージボックスで表示しています。例えば、「数値」という変数には100という数値が入っており、TypeName関数はこれがInteger型であることを返します。同様に、文字列型やオブジェクト型の変数についても確認できます。
まとめ
TypeName関数は、変数のデータ型を文字列として返す非常に便利な関数です。特に、異なるデータ型を扱うプログラムでは、どのようなデータが変数に入っているかを確認するのに役立ちます。これにより、予期しないエラーを防ぐことができ、デバッグが容易になります。