「vba null判定文」
「vba if文 null判定」
といった検索でのアクセスが時折あることに気付きました。
文字通りに解釈するなら、VBAでNullであるかどうかを判定するにはどうすればいいのかを、調べていらしたのでしょう。
IsNull関数でNull判定を行うサンプルマクロ
「Null」という単語を覚えたばかりの方が、本当に必要なのはNull判定ではないにも関わらず、
「vba null判定文」
「vba if文 null判定」
と検索してしまった可能性もあるのではないかと疑っていますが、VBAのIsNull関数を使えば、
Nullかどうか判定できます。
Dim var As Variant
var = Null
If IsNull(var) Then
MsgBox "Nullです。"
Else
MsgBox "Nullではありません。"
End If
End Sub
Null判定を行うサンプルマクロの実行結果
上記のSubプロシージャのままで実行すれば、
var = Null
で変数varにNullを代入しているので、もちろんIsNull(var)はTrueです。
変数varにNullを代入するステートメントをコメントアウトすれば、Variant型変数の初期値はEmptyですから、IsNull(var)はFalseとなります。
ちなみに、もしも、
If IsNull(var) Then
の意味がピンとこなければ、
If IsNull(var) = True Then
としてみてください。
ローカルウィンドウで変数の中見を確認しましょう。
拙著『いちばんやさしいExcel VBAの教本』でも多用しているローカルウィンドウで、変数varの中身を確認することをおすすめします。
ショートカットキー[F8]でステップ実行を開始すると、
上図のとおり変数varはEmpty値で初期化されます。
ステップ実行を継続して、varへのNullの代入が行われると、
上図のとおり変数varがNullであることを確認できます。
最終更新日時:2022-10-28 06:15
Home » エクセルマクロ・Excel VBAの使い方 » VBA関数 » Nullを判定する-IsNull関数