関数・メソッド

引数が省略されたかどうか判断する【IsMissing関数】【ExcelVBA】

構文

IsMissing(ArgName)  As Boolean

ArgName・・・省略されたかどうか評価する文字列(Variant型必須)
戻り値 ・・・・・Boolean型 省略されたらTrue/省略されていなければFalse
ArgNameに指定した引数が省略されたかどうか判別します。

IsMissing関数のサンプルコード


'■IsMissingの動きをチェック
Public Sub sample()
    Debug.Print call_isMissing_sample               'True
    Debug.Print call_isMissing_sample("あいうえお") 'False
End Sub
Public Function call_isMissing_sample(Optional val As Variant) As Boolean
   
   '■引数が省略されていればTrue/されていなければFalse
   call_isMissing_sample = IsMissing(val)

End Function


 

注意点

  • Variant型以外のデータ型は対応できません。(Long型やString型などは判別できません)
    例)Long型だと初期値の0なのか、省略された0なのか不明のため。
  • Variant型しか判別できないという事は、Optionalで省略して、IsMissing関数で判別はあまり使用しない方がいいと考えます。私は使いません。別途初期値を準備して行う方がスムーズである為。

関連記事

数値データかどうか判断する【IsNumeric関数】【ExcelVBA】
日付データかどうか判断する【IsDate関数】【ExcelVBA】
時刻データかどうか判断する【IsDate関数応用】【ExcelVBA】
配列かどうか調べる【IsArray関数】【ExcelVBA】
Nullデータかどうか判断する【IsNull関数】【ExcelVBA】
Emptyデータかどうか判断する【IsEmpty関数】【ExcelVBA】
セルの値がエラーかどうか判断する【IsError関数】【ExcelVBA】

 

コメント

タイトルとURLをコピーしました