「ieForegroundサブルーチン」の詳しい解説については、以下より確認してください。

IE(InternetExplorer)ウィンドウを最前面に表示させる方法について説明します。例えばBASIC認証を自動化させたい場合、確実にSendKeysステートメントを利用できるよう最初にIEウィンドウを最前面に設定しておくと非常に便利です。

サブルーチンとは

サブルーチンとは、プログラム処理の中で繰り返し利用されるルーチン作業をモジュール化(部品化)してまとめたものになります。また、呼び出す側をメインルーチンと呼ぶのに対して「サブルーチン」と呼ばれます。

メリット

繰り返し利用されるルーチン作業をモジュール化(部品化)することで、同じ処理のプログラムを何度も書く手間が省け、プログラムも全体的に見やすくなります。これによりプログラムソースの可読性や保守性を高く保つことができます。

関連性の高いサブルーチン

Declare Function IsIconic Lib "user32.dll" (ByVal hWnd As Long) As Long
Declare Function SetForegroundWindow Lib "user32.dll" (ByVal hWnd As Long) As Long
Declare Function ShowWindowAsync Lib "user32.dll" ( _
    ByVal hWnd As Long, _
    ByVal nCmdShow As Long _
    ) As Long
    
Const SW_RESTORE As Long = 9

Sub ieForeground(objIE As InternetExplorer)
                   
    'ウィンドウが最小化されているかのチェック
    If IsIconic(objIE.hWnd) Then
        ShowWindowAsync objIE.hWnd, SW_RESTORE
    End If
    
    'IEを最前面に表示
    SetForegroundWindow (objIE.hWnd)

End Sub

※ドラッグ(スワイプ)すると全体を確認できます。


Declare Function IsIconic Lib "user32.dll" (ByVal hWnd As Long) As Long
Declare Function SetForegroundWindow Lib "user32.dll" (ByVal hWnd As Long) As Long
Declare Function ShowWindowAsync Lib "user32.dll" ( _
    ByVal hWnd As Long, _
    ByVal nCmdShow As Long _
    ) As Long
    
Const SW_RESTORE As Long = 9

※ドラッグ(スワイプ)すると全体を確認できます。

まず、最前面表示に必要なWindows APIを使用できるようにAPIの宣言をします。宣言するAPIはIsIconic関数・SetForegroundWindow関数・ShowWindowAsync関数の3つです。また、定数SW_RESTOREに「9」を設定しています。こちらの値はShowWindowAsync関数の引数に利用されます。

Sub ieForeground(objIE As InternetExplorer)

※ドラッグ(スワイプ)すると全体を確認できます。

こちらはSubステートメントに引数を1つ設定しているieForegroundサブルーチンになります。こちらの構文と引数の内容は以下になります。尚、引数はすべて参照渡しで渡されます。

ieForeground("IEオブジェクト")
構文ieForeground(objIE)
引数名データ型内容値の事例初期値省略
objIEInternetExplorerInternetExplorerオブジェクトを指定します。objIE,objIE2×

こちらは、必須項目となります。「objIE」にはIEオブジェクトを設定します。複数のIEオブジェクトを操作する場合には「objIE」「objIE2」といった操作するIEオブジェクトを指定してください。オブジェクト作成により、プロパティやメソッドの利用が可能となりIE(InternetExplorer)を制御することがでます。

    'ウィンドウが最小化されているかのチェック
    If IsIconic(objIE.hWnd) Then
        ShowWindowAsync objIE.hWnd, SW_RESTORE
    End If

※ドラッグ(スワイプ)すると全体を確認できます。

こちらは、IEウィンドウが最小化されているかのチェックを行っています。IEウィンドウが最小化されている場合が「真(True)」になりますので、指定されたウインドウの表示状態を設定するShowWindowAsync関数が実行されます。

    'IEを最前面に表示
    SetForegroundWindow (objIE.hWnd)

End Sub

※ドラッグ(スワイプ)すると全体を確認できます。

指定したウィンドウを最前面に表示させるSetForegroundWindow関数IEウィンドウのハンドルを設定しています。こちらを利用することで、IEウィンドウを最前面に表示できるようになります。

VBAのIE制御についてのQ&A掲示板

↑VBAのIE操作で分からない事があればこちらの掲示板よりご質問ください。

ExcelのVBA初心者入門

↑こちらはVBAをマスターできるよう初心者向けのエクセルVBA入門コンテンツになります。

目次

IE操作に便利なツール

こちらでは、これまでに紹介したIE(InternetExplorer)操作で便利な機能をツール化しています。無償でダウンロードできますので、目的に合わせたご利用ください。

IEのメソッド・プロパティ

こちらでは、IE(InternetExplorer)オブジェクトのメソッド・プロパティをまとめています。

IE操作のVBA関数

こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたVBA関数をまとめています。

IE操作のステートメント

こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたステートメントをまとめています。ExcelのVBAで基本的な部分になりますので、しっかり理解しましょう。

IE制御のVBAコード

こちらでは、これまでに作成したIE(InternetExplorer)操作で役立つサブルーチンをまとめています。
全てをコピーする必要はありませんが、目的に合わせたサブルーチンをご利用ください。