VBAのIE(InternetExplorer)オブジェクトのTopLevelContainerプロパティについて解説しています。
TopLevelContainerプロパティは、指定したオブジェクトがトップレベルのオブジェクトである場合にTrueを返します。
IEオブジェクトのTopLevelContainerプロパティは、指定したオブジェクトがトップレベルのオブジェクトである場合にTrueを返します。・・・が、詳しい詳細については調査中です。詳しい内容が分かりましたら、更新します。本家サイトの解説は以下の通りです。
IEオブジェクトがフレーム内にある場合、そのオブジェクトはFalseを返し、InternetExplorerのは常にTrueを返します。
| 構文 | object.TopLevelContainer | |
|---|---|---|
| 引数 | 省略 | 説明 | 
| object | × | 表示させるIEオブジェクトの名前を指定します。 | 
Sub sample()
  Dim objIE As InternetExplorer
  'IE(InternetExplorer)のオブジェクトを作成する
  Set objIE = CreateObject("InternetExplorer.Application")
  'IE(InternetExplorer)を表示する
  objIE.Visible = True
  'IE(InternetExplorer)がトップレベルのオブジェクトであるかどうかチェックする
  If objIE.TopLevelContainer = True Then
  
    MsgBox "トップレベルのオブジェクトです。"
  Else
  
    MsgBox "トップレベルのオブジェクトではありません。"
  End If
End Sub※ドラッグ(スワイプ)すると全体を確認できます。
メッセージボックスで「トップレベルのオブジェクトです。」と表示されます。

Sub sample()
 Dim objIE As InternetExplorer
※ドラッグ(スワイプ)すると全体を確認できます。
sampleのSubステートメントは引数の設定なしです。次に、Dimステートメントを利用して変数objIEをInternetExplorer型で宣言します。
'IE(InternetExplorer)のオブジェクトを作成する
Set objIE = CreateObject("InternetExplorer.Application")
※ドラッグ(スワイプ)すると全体を確認できます。
SetステートメントとCreateObject関数を利用してIEのオブジェクトを作成します。オブジェクト作成によりプロパティやメソッドを利用することができます。
'IE(InternetExplorer)を表示する
objIE.Visible = True
※ドラッグ(スワイプ)すると全体を確認できます。
VisibleプロパティにTrueを設定することで、ブラウザを表示させます。
'IE(InternetExplorer)がトップレベルのオブジェクトであるかどうかチェックする
If objIE.TopLevelContainer = True Then
  
  MsgBox "トップレベルのオブジェクトです。"
Else
  
  MsgBox "トップレベルのオブジェクトではありません。"
End If
※ドラッグ(スワイプ)すると全体を確認できます。
こちらは、If...Then...Else ステートメントを利用して条件分岐しています。条件としてTopLevelContainerプロパティでトップレベルのオブジェクトかどうかでチェックしており、「True」の値が返されますので、MSgBox関数で「トップレベルのオブジェクトです。」と表示されます。
End Sub※ドラッグ(スワイプ)すると全体を確認できます。
最後はEndステートメントを利用してsampleプロシージャを終了させます。
TopLevelContainerプロパティは、あまり利用しませんが覚えておきましょう。
| プロパティ | データ型 | 内容 | 
|---|---|---|
| Application | Object | アプリケーションオートメーションオブジェクトにアクセス可能であれば、そのオートメーションオブジェクトを返す。 | 
| Visible | Boolean | アプリケーションの表示・非表示を設定します。 | 
| Busy | Boolean | Webページが読み込み中かどうかを示す。 | 
| ReadyState | tagREADYSTATE | IEオブジェクトのドキュメントの読み込み状態を示します。 | 
| document.readyState | tagREADYSTATE | IEのdocumentオブジェクトの読み込み状態を示します。 | 
| Top | Long | InternetExplorerウィンドウの垂直位置(ピクセル)を設定します。 | 
| Left | Long | InternetExplorerウィンドウの水平位置(ピクセル)を設定します。 | 
| Width | Long | InternetExplorerウィンドウの幅(ピンクセル)を設定します。 | 
| Height | Long | InternetExplorerウィンドウの高さ(ピンクセル)を設定します。 | 
| AddressBar | Boolean | アドレスバーを表示・非表示させます。 | 
| MenuBar | Boolean | メニューバーを表示・非表示させます。 | 
| StatusBar | Boolean | ステータスバーを表示・非表示させます。 | 
| ToolBar | Long | ツールバーが表示されているのを制御します。 | 
| FullScreen | Boolean | ウィンドウを最大化し、ステータスバー、ツールバー、メニューバー、およびタイトルバーを非表示にします。 | 
| TheaterMode | Boolean | InternetExplorerのシアターモードを設定します。 | 
| Resizable | Boolean | ウィンドウサイズ変更の可否を設定します。 | 
| Offline | Boolean | 設定またはオブジェクトがオフラインモードで動作しているかどうかを示す値を取得します。 | 
| RegisterAsBrowser | Boolean | 設定またはオブジェクトは、トップレベルのブラウザウィンドウとして登録されているかどうかを示す値を取得します。 | 
| RegisterAsDropTarget | Boolean | 設定またはオブジェクトはナビゲーションのためのドロップターゲットとして登録されているかどうかを示す値を取得します。 | 
| Silent | Boolean | 任意のダイアログボックスを表示することかどうかを設定する。 | 
| TopLevelContainer | Boolean | 指定したオブジェクトがトップレベルのオブジェクトである場合にTrueを返します。 | 
| HWND | Long | 指定したInternetExplorerのHWNDを返します。 | 
| Container | Object | コンテナ/親へのオブジェクト参照を取得します。 | 
| Document | Object | 指定したドキュメントを返します。 | 
| Parent | Object | コンテナ/親が存在する場合は、そのオートメーションオブジェクトのオートメーションオブジェクトを返します。 | 
| Path | String | InternetExplorerアプリケーションのフォルダパスを返します。 | 
| FullName | String | InternetExplorerアプリケーションのファイルパスを返します。 | 
| Name | String | アプリケーションの名前を返します。 | 
| LocationName | String | 指定したページのタイトルを取得します。 | 
| LocationURL | String | 指定したページのURLを取得します。 | 
| StatusText | String | ステータスバーのテキストを取得します。 | 
| Type | String | 含まれているドキュメントオブジェクトの型を返します。 | 
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。
↑VBAのIE操作で分からない事があればこちらの掲示板よりご質問ください。
ExcelのVBA初心者入門↑こちらはVBAをマスターできるよう初心者向けのエクセルVBA入門コンテンツになります。
こちらでは、これまでに紹介したIE(InternetExplorer)操作で便利な機能をツール化しています。無償でダウンロードできますので、目的に合わせたご利用ください。
こちらでは、IE(InternetExplorer)オブジェクトのメソッド・プロパティをまとめています。
こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたVBA関数をまとめています。
こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたステートメントをまとめています。ExcelのVBAで基本的な部分になりますので、しっかり理解しましょう。
こちらでは、これまでに作成したIE(InternetExplorer)操作で役立つサブルーチンをまとめています。
全てをコピーする必要はありませんが、目的に合わせたサブルーチンをご利用ください。