変数がオブジェクト型かどうかをチェックする( 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 ステ …
-
-
日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )
DateValue 関数(文字列から日付データを取得) 【書式】 date_va …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
配列の要素数を取得する(UBound 関数・LBound 関数)
UBound 関数・LBound 関数 【書式】 result = UBound …
-
-
日付時刻:数値から日付・時刻データを取得( DateSerial 関数、TimeSerial 関数 )
DateSerial 関数(数値を使って日付データを取得) 【書式】 date …
-
-
文字に下線を設定する(Underline プロパティ)
下線を設定(Underline プロパティ) Underline プロパティは、 …
-
-
テキストファイル(UTF-8)を読み込み、書き出し(ADODB.Stream)
Stream オブジェクト ADO(ActiveX Database Objec …
-
-
ユーザー設定リストを使って並べ替える(Sort)
VBAでリスト、テーブルを並べ替える(Sort) VBAで、ソートを行うには、S …
-
-
VBA の演算子(論理演算子:And、Eqv、Imp、Not、Or、Xor)
論理演算子 論理演算を行うときに使用する演算子で、以下の 6 種類があります。 …
-
-
配列(宣言・要素数の変更について)
配列の宣言 【書式】※ 配列の宣言 <Type 型の静的配列(固定長配列)の宣言 …
