IsObject 関数IsObject function

識別子がオブジェクト変数を表しているかどうかを示す Boolean 値を返します。Returns a Boolean value indicating whether an identifier represents an object variable.



必須の_identifier_ 引数は変数名です。The required identifier argument is a variable name.


Isobjectは、バリアントVarType vbobjectであるかどうかを判断する場合にのみ役立ちます。IsObject is useful only in determining whether a Variant is of VarType vbObject. これは、バリアントがオブジェクトを実際に参照 (または参照) した場合や、 ** Nothing** が含まれている場合に、発生する可能性があります。This could occur if the Variant actually references (or once referenced) an object, or if it contains Nothing.

_Id_がObject型または任意の有効なクラス型を使用して宣言されている場合、または、_識別子_がVarType vbobjectバリアント型 (Variant) の場合、またはユーザー定義のオブジェクトの場合、 isobjectTrueを返します。それ以外の場合は、 Falseを返します。IsObject returns True if identifier is a variable declared with Object type or any valid class type, or if identifier is a Variant of VarType vbObject, or a user-defined object; otherwise, it returns False.

IsObject は、変数に Nothing が設定されている場合にも、真 (True) を返します。 IsObject returns True even if the variable has been set to Nothing. エラー トラップを使用して、オブジェクト参照が有効であるかどうかを確認します。Use error trapping to be sure that an object reference is valid.


この関数は、エラーが発生する前にオブジェクトがインスタンス化されているかどうかを確認できないコードのエラー処理のセクションで役立ちます。This function is useful in error handling sections of the code where you are not sure whether an object was instantiated before the error occurred, and for example, you want to close it.


次の例では、IsObject 関数を使用して、識別子がオブジェクト変数を表しているかどうかを判定しています。This example uses the IsObject function to determine if an identifier represents an object variable. _MyObject_と_YourObject_は、同じ型のオブジェクト変数です。MyObject and YourObject are object variables of the same type. これらは例示のみを目的として使用されている汎用名です。They are generic names used for illustration purposes only.

Dim MyInt As Integer              ' Declare variables.
Dim YourObject, MyCheck           ' Note: Default variable type is Variant.
Dim MyObject As Object
Set YourObject = MyObject         ' Assign an object reference.
MyCheck = IsObject(YourObject)    ' Returns True.
MyCheck = IsObject(MyInt)         ' Returns False.
MyCheck = IsObject(Nothing)       ' Returns True.
MyCheck = IsObject(Empty)         ' Returns False.
MyCheck = IsObject(Null)          ' Returns False.

関連項目See also

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.