引数が省略されたかどうかをチェックする( IsMissing 関数 )
IsMissing 関数の使い方
【書式】
result = IsMissing ( argname )
【引数・戻り値】
- argname ・・・ プロシージャの省略可能なバリアント型の引数の名前を指定します。
- result ・・・ プロシージャを呼び出したときに省略可能なバリアント型引数がプロシージャに渡されたかどうかの結果(ブール型)
引数が渡されなかった時、つまり引数が省略されたとき ⇒ 真(True)
引数が渡された時 ⇒ 偽(False)
IsMissing 関数は、バリアント型以外の整数型や倍精度浮動小数点型などの通常のデータ型に対しては無効です。
IsMissing 関数の使用例
サンプルVBAソース<その1>
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
'------------------------------------------------------------------------------ ' IsMissing 関数の動作 '------------------------------------------------------------------------------ Sub Sample_ismissing() Dim num As Long, str As String, obj1 As Object, obj2 As Object num = 100: str = "こんにちは" Set obj2 = Nothing Debug.Print test_missing01() 'True ※引数が省略された Debug.Print test_missing01(num) 'False Debug.Print test_missing01(str) 'False Debug.Print test_missing01(obj1) 'False Debug.Print test_missing01(obj2) 'False Debug.Print test_missing01(Null) 'False Debug.Print Debug.Print test_missing02() 'False ※この場合、argu は、0 となる Debug.Print test_missing02(num) 'False Debug.Print Debug.Print test_missing03() 'True ※引数が省略された Debug.Print test_missing03(num, str) 'False Debug.Print test_missing03(obj1) 'False Debug.Print test_missing03(obj2) 'False Debug.Print test_missing03(1, 2, 3) 'False Debug.Print test_missing03(Null) 'False End Sub '------------------------------------------------------------------------------ '省略可能なバリアント型引数 Function test_missing01(Optional argu) test_missing01 = IsMissing(argu) End Function '省略可能な数値型(Long)引数 Function test_missing02(Optional argu As Long) test_missing02 = IsMissing(argu) End Function 'キーワード ParamArray を指定した引数 Function test_missing03(ParamArray argu()) test_missing03 = IsMissing(argu) End Function |
実行結果
サンプルVBAソース<その2>
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
'------------------------------------------------------------------------------ ' IsMissing 関数 使用例 '------------------------------------------------------------------------------ '以下のように、省略可能な引数(バリアント型)を使用し、 '省略した場合の処理(初期値を指定する等)を行う場合に 'IsMissing 関数を使用します Sub Sample_ismissing01() MsgBox test_missing04() End Sub '------------------------------------------------------------------------------ Function test_missing04(Optional argu) If IsMissing(argu) Then argu = "引数は省略されました!" End If test_missing04 = argu End Function |
実行結果
関連記事
-
-
変数がNull 値かどうかをチェックする( IsNull 関数 )
IsNull 関数の使い方 【書式】 result = IsNull ( exp …
-
-
日付時刻:時・分・秒を取得(Hour、Minute、Second 関数)
日付時刻から時・分・秒を取得する関数 【書式】 time_hour = Hour …
-
-
色を設定する(QBColor 関数)
QBColor 関数 QBColor 関数は、指定した色番号に対応するRGB コ …
-
-
IME の現在の状態を取得します(IMEStatus 関数)
IMEStatus 関数の使い方 【書式】 result = IMEStatus …
-
-
式の値に応じて多分岐を行う(Switch 関数)
Switch 関数 の使い方 Switch 関数は、「式・値」を対にして指定して …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
-
-
変数が数値型かどうかをチェックする( IsNumeric 関数 )
IsNumeric 関数の使い方 【書式】 result = IsNumeric …
-
-
メッセージボックスを表示(MsgBox関数)
MsgBox関数 【書式】 result = MsgBox ( Prompt [ …
-
-
インプットボックスを表示する(InputBox関数・InputBoxメソッド)
「InputBox関数」と「InputBoxメソッド」の違い 「InputBox …
-
-
日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
DateDiff 関数の使い方 【書式】 result = DateDiff ( …

