指定された Application オブジェクトによって表される Excel のインスタンスへのハンドルを返します。 読み取り専用のバリアント型 (Variant) の値。
構文
式。HinstancePtr
expressionApplication オブジェクトを 表す変数。
注釈
このプロパティは、32 ビット バージョンと 64 ビット バージョンの Excel の両方で正しいハンドルを返します。 32 ビット版の Excel でのみ正常に動作する Application オブジェクトの Hinstance プロパティの機能を拡張します。
このプロパティで使用する理想的なデータ型は LongPtr データ型です。 このプロパティによって返される値を LongPtr 変数に割り当てると、32 ビット バージョンと 64 ビット バージョンの両方の Excel で期待どおりに動作します。 このプロパティは、内部での実装に関する理由で、バリアント型 (Variant) として定義されます。 ただし、常に、32 ビット システム上では 32 ビットの値、64 ビット システム上では 64 ビットの値を取得します。
このプロパティは、Excel 以降のみで動作し、64 ビット版の Excel でのみ必須です。 以前のバージョンの Excel でも動作するコードを記述する必要がある場合は、コンパイル エラーを回避するために、#if Win64条件付きコンパイル ディレクティブの下でこのプロパティを読み取り、#else ディレクティブの下で Hinstance プロパティを使用します。
このプロパティは、Excel 以降の 32 ビット環境と 64 ビット環境の両方で正常に動作します。 したがって、コードが Excel 以降 (32 ビットまたは 64 ビット) でのみ使用することを意図している場合は、条件付きコンパイルなしでこのプロパティを読み取ることができます。
64 ビット環境で VBA を使用する方法の詳細については、「64-bit Visual Basic for Applications の概要」を参照してください。
例
この例では、Excel インスタンス ハンドルがユーザーに対してメッセージ ボックスに表示されます。
Sub CheckHinstance()
MsgBox Application.HinstancePtr
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。