教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 関数】VarType関数の使い方を教えて!

構文

構文は以下の通りです。

VarType(変数)

解説

VarType関数は、変数のデータ型を判定する際に重要な役割を果たします。

引数 指定 内容
変数 必須 数式または文字列式を含むバリアント型 (Variant) の式を指定します。

この関数は、判定結果として整数値を返します。整数値は以下の通りです。

内容
0 Empty値(未初期化)
1 Null値(無効な値)
2 整数型(Integer)
3 長整数型(Long)
4 単精度浮動小数点数型(Single)
5 倍精度浮動小数点数型(Double)
6 通貨型(Currency)
7 日付型(Date)
8 文字列型(String)
9 オブジェクト
10 エラー値
11 ブール型(Boolean)
12 バリアント型(Variant)
13 非OLE オートメーション オブジェクト
14 10進数型
17 バイト型(Byte)
36 ユーザー定義型を含むバリアント型

使い方

具体的な使い方を紹介します。

1.数値型(Numeric)

数値型の変数のデータ型を判定する際には、以下のようにVarType関数を使用します。

Dim num As Integer
Dim type As Integer
num = 10
type = VarType(num)
MsgBox "numのデータ型は " & type & " です。"

この例では、変数numのデータ型を判定し、結果をtypeに代入しています。最後の行では、メッセージボックスを表示して、numのデータ型を知らせています。

2.文字列型(String)

文字列型の変数のデータ型を判定する際には、以下のようにVarType関数を使用します。

Dim str As String
Dim type As Integer
str = "Hello, World!"
type = VarType(str)
MsgBox "strのデータ型は " & type & " です。"

この例では、変数strのデータ型を判定し、結果をtypeに代入しています。最後の行では、メッセージボックスを表示して、strのデータ型を知らせています。

3.真偽型(Boolean)

真偽型の変数のデータ型を判定する際には、以下のようにVarType関数を使用します。

Dim flag As Boolean
Dim type As Integer
flag = True
type = VarType(flag)
MsgBox "flagのデータ型は " & type & " です。"

この例では、変数flagのデータ型を判定し、結果をtypeに代入しています。最後の行では、メッセージボックスを表示して、flagのデータ型を知らせています。

プログラミング例

以下に、プログラミング例を紹介します。

1.配列型(Array)

配列型の変数のデータ型を判定する際には、以下のようにVarType関数を使用します。

Dim arr(1 To 5) As Integer
arr(1) = 10
arr(2) = 20
arr(3) = 30
arr(4) = 40
arr(5) = 50
Dim type As Integer
type = VarType(arr)
MsgBox "arrのデータ型は " & type & " です。"

この例では、整数型の要素を持つ配列arrを定義し、そのデータ型を判定しています。

2.オブジェクト型(Object)

オブジェクト型の変数のデータ型を判定する際には、以下のようにVarType関数を使用します。

Dim rng As Range
Dim type As Integer
Set rng = Worksheets("Sheet1").Range("A1:A10")
type = VarType(rng)
MsgBox "rngのデータ型は " & type & " です。"

この例では、範囲オブジェクトrngを定義し、そのデータ型を判定しています。

まとめ

VarType関数は、変数のデータ型を判定する際に重要な関数です。VarType関数の使い方は非常にシンプルであり、数値型、文字列型、真偽型、配列型、オブジェクト型など、さまざまなデータ型に対応しています。これを活用することで、より効果的なデータの処理や操作が可能になります。是非活用してください。