変数がオブジェクト型かどうかをチェックする( 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 |
実行結果
関連記事
-
-
色の設定(ThemeColor プロパティ・TintAndShade プロパティ)
ThemeColor プロパティ・TintAndShade プロパティ テーマカ …
-
-
配列の要素数を取得する(UBound 関数・LBound 関数)
UBound 関数・LBound 関数 【書式】 result = UBound …
-
-
式を評価し、結果(真・偽)に応じた式・値を返す(IIf 関数)
IIf 関数 の使い方 IIf(アイイフ)関数は、式を評価してその結果(真・偽) …
-
-
列挙型変数(Enum ステートメント)
列挙型変数を使う 列挙型変数を使用するには、Enum ステートメントを使って、宣 …
-
-
ユーザー定義定数(Const ステートメント)
定数を使う ユーザー定義の定数を使用するには、Const ステートメントを使って …
-
-
データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)
VarType 関数 の使い方 VarType 関数は、引数に、データ型を調べた …
-
-
VBA の演算子(演算子の優先順位)
演算子の優先順位 演算子の優先順位とは、1つの式の中に演算子が複数ある場合、どの …
-
-
指定した値を16進数で表記した文字列に変換する(Hex 関数)
Hex 関数 の使い方 【書式】 result = Hex ( expressi …
-
-
VBA で正規表現を使う(RegExp オブジェクトのメソッド)
RegExp オブジェクトのメソッド RegExp オブジェクトの詳細に関しては …
-
-
ポイント単位の値に変換(CentimetersToPoints,InchesToPoints)
CentimetersToPoints メソッド センチメートル単位の値をポイン …