変数がオブジェクト型かどうかをチェックする( IsObject 関数 )
IsObject 関数の使い方
result = IsObject ( expression )
【引数・戻り値】
- expression ・・・ 調べる変数や式
- result ・・・ 引数 expression が、オブジェクト型の変数であるかどうかを調べた結果
(ブール型:オブジェクト変数であれば、True / そうでなければ、False )。
IsObject 関数は、引数 expression がオブジェクト型(Object)で宣言された変数であったり、任意の有効なクラスを指定して宣言された変数である場合は、真(True)を返します。
また、expression がバリアント型(Variant)であっても、Set ステートメントで、オブジェクト変数を参照している場合は、真(True)を返します。さらに、変数に、Nothing が設定されている場合にも真(True)を返します。
IsObject 関数の使用例
サンプルVBAソース
|
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 |
Sub Sample_isobject() Dim myObj1 As Object, myObj2 As Object, myObj3 As Object Dim myVal1, myVal2, myVal3, myVal4 Set myObj1 = Application.ActiveWorkbook Set myObj3 = Nothing Set myVal1 = myObj2 myVal2 = "Hello!" myVal3 = Null 'True Debug.Print IsObject(myObj1) 'ワークブックオブジェクト Debug.Print IsObject(myObj2) 'オブジェクト型(宣言のみ) Debug.Print IsObject(myObj3) 'Nothing を設定 Debug.Print IsObject(myVal1) 'バリアント型(オブジェクト型を参照) 'False Debug.Print IsObject(myVal2) 'バリアント型(文字列) Debug.Print IsObject(myVal3) 'バリアント型(Null) Debug.Print IsObject(myVal4) 'バリアント型(Empty) End Sub |
実行結果
関連記事
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
-
-
画面の更新を停止(ScreenUpdating プロパティ)
画面の更新を停止 マクロを実行すると、画面が更新されます。これにより、実行速度が …
-
-
VBA の演算子(算術演算子)
算術演算子 算術演算を行うときに使用する演算子です。 ^(べき乗)、*(積)、/ …
-
-
Split 関数(文字列型の一次配列を作成)
Split 関数の使い方 【書式】 myArray = Split ( expr …
-
-
文字列:文字列の指定した位置から指定文字数取得(Mid 関数,MidB 関数)
Mid 関数・MidB 関数 の使い方 【書式】 result_mid = Mi …
-
-
ある数値が、複数の範囲のどの範囲に含まれるかを示す文字列を返す(Partition 関数)
Partition 関数 の使い方 Partition 関数は、ある数値が、区切 …
-
-
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)
Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …
-
-
変数のデータ型・宣言(Dim ステートメント)
変数の宣言 一般的な方法 【書式】 Dim varname [ As type, …
-
-
データをクリアする(ClearContents メソッド)
ClearContents メソッド 対象がセル範囲(Range オブジェクト) …
-
-
乱数を生成する(Rnd 関数)
Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …
