IsEmpty関数:Variant型の変数が初期化されているかどうかを確認する

IsEmpty 関数は Excel VBA で用意されている関数の一つで、引数に指定した Variant 型の変数が初期化されているかどうかを確認します。ここでは Excel VBA における IsEmpty 関数の使い方について解説します。

(Last modified: )

IsEmpty関数の定義と使い方

IsEmpty 関数は引数に指定した Variant 型の変数が初期化されているどうかを確認し、「True」または「False」の値を返します。

IsEmpty(expression)

引数に Variant 型の変数を指定します。変数が初期化されていなかった場合は「True」、そうでなかった場合は「False」が戻り値として返されます。

Variant の変数に値が代入されていない状態の場合、初期値が Empty となっており、変数の値が Empty かどうかを調べます。 Variant 型以外の変数は初期化が行われていない場合でも初期値は Empty ではないのでいずれにしても IsEmpty 関数は「False」を返します。

次の例を見てください。

Dim v As Variant
Dim s As String
Dim i As String

Debug.Print IsEmpty(v)  'True

v = "Hello"

Debug.Print IsEmpty(v)  'False
Debug.Print IsEmpty(s)  'False
Debug.Print IsEmpty(i)  'False

初期化されていない Variant 型の変数を引数に指定した場合は「True」を返します。初期化がされると「False」となります。他のデータ型の場合は初期化がされていなくても「False」となります。

サンプルコード

それでは簡単なサンプルを作成して試してみます。

Option Explicit

Sub IsEmpty関数()
    Dim v As Variant
    Dim s As String
    Dim i As Integer

    Debug.Print IsEmpty(v)

    v = "Hello"
    Debug.Print IsEmpty(v)

    v = Empty
    Debug.Print IsEmpty(v)

    Debug.Print IsEmpty(s)
    Debug.Print IsEmpty(i)
End Sub

IsEmpty関数の定義と使い方(1)

このプログラムを実行すると IsEmpty 関数を使って Variant 型の変数が初期化されているかどうかを調べます。初期化されていなかったり、明示的に Empty 値を代入した場合は「True」となります。他のデータ型の変数の場合は常に「False」が返されます。

IsEmpty関数の定義と使い方(2)

-- --

Excel VBA における IsEmpty 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。