-
∨目次
- 構文
- 解説
- 使用例
VBA IsEmpty 関数
はじめに
Excel VBA マクロの IsEmpty 関数を紹介します。
IsEmpty 関数は、指定したバリアント型 (Variant) の値が空かどうかを判定します。
エラーなどが原因で値を設定できないときにの判定に使用します。
-
目次
- 構文
- 解説
- 使用例
構文
IsEmpty(値)
値が Empty のときは True を返します。それ以外のときは False を返します。
引数「値」 | 判定したい値を指定します。 |
戻り値の型 | ブール型 (Boolean) |
解説
Variant 型の初期値は初期化されていないことを意味するEmptyという値が設定されています。
引数「値」がEmptyならTrueを返します。それ以外の値ならFalseを返します。
クラスなどの参照型の初期値はNothingという値が設定されています。
引数「値」がNothingならFalseを返します。
正常な処理ができない関数の戻り値としてEmptyを返すと、関数が正常に行われたかどうかを判定できます。
使用例
Dim v As Variant
Dim b As Boolean
b = IsEmpty(v) ' 何も設定しないと Empty が入っている
Debug.Print(b) ' True
If v = Empty Then
Debug.Print("Empty") ' Empty
End If
v = ""
b = IsEmpty(v)
Debug.Print(b) ' False
v = Empty
b = IsEmpty(v)
Debug.Print(b) ' True
Set v = Nothing
b = IsEmpty(v)
Debug.Print(b) ' False
Dim i As Integer
b = IsEmpty(i)
Debug.Print(b) ' False
Dim s As String
b = IsEmpty(s)
Debug.Print(b) ' False
関数が正常に行われたか判定する。
Sub 実行()
Dim v As Variant
v = 関数(0) ' 不正
If IsEmpty(v) Then
Debug.Print("不正")
Else
Debug.Print("正常")
End If
v = 関数(1) ' 正常
If IsEmpty(v) Then
Debug.Print("不正")
Else
Debug.Print("正常")
End If
End Sub
Function 関数(ByVal i As Integer) As Variant
If i = 0 Then
関数 = Empty ' この行はなくてもいい
Exit Function ' 不正な引数のため処理を中止
End If
関数 = True ' 正常な処理
End Function
スポンサーリンク