ken3memo (三流君)

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマーKen3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 最近は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。


広告: [7月] [8月] [9月]

2010-06-30

XXXXXさんへ VBAでIEを起動後に最小化したい

>一つ質問があります。

>Set objIE = CreateObject("InternetExplorer.application") 'IEのオブジェクトを作る

>という処理をしたあと、そのobjIEを最小化したいのですが、適切なコマンドが見当たりません。

VB API ウインドウ最小化 で検索すると、CloseWindowが見つかります。

で、その関数を呼ぶだけでOKかなぁ。。。

※単純に新規にCreateObjectで起動したIEの.hWndの値を渡しただけです。

f:id:ken3memo:20100701022703j:image

Option Explicit

'標準モジュール 頭で忘れずに 使用するAPIの定義を入れてね。
Public Declare Function CloseWindow Lib "USER32" (ByVal hWnd&) As Long

Sub ie_test()  'IEテスト 起動後に最小化したい。

'IEの起動
    Dim objIE As Object '変数を定義します。
    Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。
    objIE.Visible = True      '可視、Trueで見えるようにします。
    
'巡回中は最小化したい?そんな時は、
    Dim Ret As Long
    Ret = CloseWindow(objIE.hWnd)  'APIに起動したIEのウインドウハンドルを渡す
    '↑単純に.hWndの値を渡しただけです。
    
'処理したいページを表示します。
    objIE.Navigate "http://www.google.co.jp/"

'ページの表示完了を待ちます。
    While objIE.ReadyState <> 4 Or objIE.Busy = True '.ReadyState <> 4の間まわる。
        DoEvents  '重いので嫌いな人居るけど。
    Wend
    
    'google検索項目(name=q)にセットする。
    objIE.Document.getElementsByName("q")(0).Value = "三流君"

'巡回が終了したら元に戻したいのが人情だけど、今回は最小化のテストなのでそのまま放置

End Sub

無事に最小化されることを願いつつ、失礼します。 三流プログラマー Ken3

ken3memoken3memo 2010/07/01 02:27 PS.ShowWindow の 方がよかったかも...

指定されたウィンドウの表示状態を設定します。

BOOL ShowWindow(
HWND hWnd, // ウィンドウハンドル
int nCmdShow // 表示状態
);

値 意味
0 (SW_HIDE) ウィンドウを非表示にして、他のウィンドウをアクティブにします。

1 (SW_SHOWNORMAL) ウィンドウをアクティブにして表示します。ウィンドウが最小化または最大化されている場合は、ウィンドウの位置とサイズを元に戻します。アプリケーションは、最初にウィンドウを表示させるときにこのフラグを指定するべきです。

2 (SW_SHOWMINIMIZED) ウィンドウをアクティブにして、最小化されたウィンドウとして表示します。

3 (SW_SHOWMAXIMIZED, SW_MAXIMIZE) ウィンドウをアクティブにして、最大化されたウィンドウとして表示します。

4 (SW_SHOWNOACTIVATE) ウィンドウをアクティブにはせずに表示します。

5 (SW_SHOW) ウィンドウをアクティブにして、現在の位置とサイズで表示します。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/ken3memo/20100630/1277918159



その他blog

流行のBlogで情報発信(手打ちのHTMLよりブログで更新が楽なので)
・はてなを使用して[id:ken3memo]メモ的に放り込んでいるブログです
・[objIE解説,vba] ・・・ VBAでIEを操作する サンプル ほか
・[VBA,ASP CODEのゴミ箱] ・・・ 主にVBAやASPのコードなど。
・[BBS過去ログ] ・・・ 過去ログをアップ
・[その他商品紹介Blog] ・・・ 内容の薄い、商品のメモ?です

アンテナ
巡回ページ

よく見るページ