変数がオブジェクト型かどうかをチェックする( 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 |
実行結果
関連記事
-
-
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)
RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …
-
-
文字列:定数(改行・タブ)
改行・タブの定数 これらの定数は、使用前に定義する必要はありません。コード中のど …
-
-
セルのデータを固定長形式で複数のセルに分割する(TextToColumns メソッド・Parse メソッド)
固定長形式でセルを分割 TextToColumns メソッドや Parse メソ …
-
-
列挙型変数(Enum ステートメント)
列挙型変数を使う 列挙型変数を使用するには、Enum ステートメントを使って、宣 …
-
-
文字列:文字列の長さを取得( Len 関数、LenB 関数 )
Len 関数(文字列の長さを取得) 【書式】 result_len = Len …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
Math 関数( Abs,Atn,Cos,Exp,Log,Rnd,Sgn,Sin,Sqr,Tan )
Abs 関数 【書式】 value = Abs ( number ) 【引数・戻 …
-
-
VBA で正規表現を使う(RegExp オブジェクト)
RegExp オブジェクト VBA で正規表現を使うには、VBScript のR …
-
-
出力位置、書き込み位置を設定(Tab 関数)
出力位置、書き込み位置を設定 Tab 関数 は、Print メソッド、または P …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
