VBA関数
IsNull関数

Excelマクロで必須のVBA関数を入門・初級・初心者向けに詳細解説
最終更新日:2020-07-01

IsNull関数


引数の式に無効なデータ(Null)が含まれていないかどうかを示すブール型(Boolean)の値を返します。
引数の式がNullの場合、 IsNull関数はTrueを返します。
それ以外の場合、IsNull関数はFalseを返します。
IsNull関数を使用して、式にNull値が含まれているかどうかを調べます。



IsNull関数の構文

IIsNull(式)

引数は、数値式または文字列式を含むバリアント型(Variant )の値です。

IsNull関数の解説

Null値は、バリアント型 (Variant) の値に有効な値が含まれていないことを示します。
Null値は、変数が初期化されていないことを示すEmpty値とは異なります。
また、Null文字列と呼ばれることがある長さが0の文字列 ("") とも異なります。


バリアント型 (Variant) 変数の初期値はEmptyであり、これを判定するにはIsEmpty関数を使います。
IsEmpty関数は、変数がEmpty値かどうかを調べ、結果をブール型(True,False)で返します。IsEmpty関数 IsEmpty(expression) expression 必ず指定します。引数expressionには、数式または文字列式を含むバリアント型(Variant)の式を指定します。

比較演算子で比較する場合、片方でもNull値の場合の結果は常にNullとなります。
If Var = Null
If Var <> Null
これらは常にFalseになります。

変数がNullかどうかを判定するにはIsNull関数を使ってください。

IsNull関数の使用例

空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)
空白セルの判定は、マクロVBAにおいては頻繁に発生しますが、正しく空白セルを判定する事は以外と難しいものです。そもそも「空白」とはどのような状態なのか… これが、はっきりしない為に何が正しいのかが判然としないことが問題を複雑にしています。以下、A1セルが空白かどうか判定する方法をいくつか紹介します。
空白セルを正しく判定する方法2|VBA技術解説
空白セルの判定について、いろいろな方から意見を頂きました。やはり、空白判定は奥が深く結構難しいものとなっています。ここでは、各プロパティや関数が、セルの状態によって返す値を再確認してみます。元記事は、空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula) 上記の記事では、
セル結合なんて絶対に許さないんだからね|VBAサンプル集
セル結合の弊害はネットに溢れているのでここで改めて説明の必要はないでしょう。とはいえ、ついついセル結合してしまう事ありますよね、人間だからね。VBAで適切に処理すればセル結合もきちんと処理は可能です。


※VBA関数一覧

マクロVBA関数の一覧と解説です、どんな関数があるかは一度は確認しておくとをお勧めいたします。どんな関数があるだけでも知っておけば、詳細の使い方は実際に使うときに調べても良いでしょう。文字列操作…34 分岐…3 型変換…14 データ判定…10 日付時刻…20 配列…6 ファイル操作…14 数学/財務…28 その他……



同じテーマ「VBA関数」の記事

IsMissing関数
IsObject関数
IsError関数
IsNull関数
TypeName関数
VarType関数
Date関数
DateAdd関数
DateDiff関数
DatePart関数
DateSerial関数


新着記事NEW ・・・新着記事一覧を見る

エクセル馬名ダービー|エクセル雑感(2021-07-21)
在庫を減らせ!毎日棚卸ししろ!|エクセル雑感(2021-07-05)
日付型と通貨型のValueとValue2について|エクセル雑感(2021-06-26)
DXってなんだ? ITと何が違うの?|エクセル雑感(2021-06-24)
エクセルVBA 段級位 目安|エクセル雑感(2021-06-21)
ローカル版エクセルが「Office Scripts」に変わる日|エクセル雑感(2021-06-10)
新関数SORTBYをVBAで利用するラップ関数を作成|VBA技術解説(2021-06-12)
VBA今日のひとこと/VBA今日の教訓 on Twitter|エクセル雑感(2021-06-10)
VBAの演算子まとめ(演算子の優先順位)|VBA技術解説(2021-06-09)
画像が行列削除についてこない場合の対処|VBA技術解説(2021-06-04)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.Excelショートカットキー一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.RangeとCellsの使い方|VBA入門
5.繰り返し処理(For Next)|VBA入門
6.マクロって何?VBAって何?|VBA入門
7.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
8.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
9.セルに文字を入れるとは(Range,Value)|VBA入門
10.とにかく書いてみよう(Sub,End Sub)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ