• 締切済み

VBAでIEが起動しているかどうかの確認

VBAでIEが起動しているかどうかを確認するにはどういうコードを使えばいいのですか? 【やりたいこと】 (1)IEが起動しているか確認 (2)起動していたら、そのまま作業開始 (3)起動していなかったら、IEを起動させてから作業開始」 作業内容はもう完成しているのですが、あとはIEが起動している場合と、そうでない場合に分けるだけなのですが…

みんなの回答

回答No.2

Shell.Applicationオブジェクトを使った方法です。 Sub test()   If IsExecutingIE() Then     MsgBox "IE起動中"   Else     MsgBox "IEを起動していない"   End If End Sub Private Function IsExecutingIE() As Boolean   Dim ws As Object   For Each ws In CreateObject("Shell.Application").Windows     If TypeName(ws.Document) = "HTMLDocument" Then       IsExecutingIE = True       Exit For     End If   Next End Function

全文を見る
すると、全ての回答が全文表示されます。
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

実行中のタスク一覧(非API) http://officetanaka.net/excel/vba/tips/tips61.htm と言うのが見つかりました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • IE起動時にオフライン作業の確認が出ます。

    こんにちは。よろしくお願いします。 WindowsXP,IE6を使用しております。 地元のCATVで接続しておりますが,パソコンを立ち上げて 初めてIEを起動したときのみ, ============ 「オフライン作業」 現在インターネットには接続していません。 コンピューターに保存されているInternetコンテンツを表示するには「オフラインで作業」をクリックしてください。 再接続する場合は「再試行」をクリックしてください。 ============ といった内容のウィンドウが出てきます。 IEの[ツール]-[オプション],接続タブの設定については 「ダイヤルアップと仮装プライベートネットワークの設定」の部分は灰色になっていて操作はできない状態です。 また,「LANの設定」は何もチェックが入っていません。 なぜこうなるのでしょうか。 ちなみに,IEを開く前に,OutlookExpressを起動させた場合, こちらは何の確認もなく,すぐに起動時の送受信をしてくれて その後IEを起動させたときは,オフラインの表示もなくHPが表示されます。 何か原因が分かる方,教えていただけませんでしょうか。 よろしくお願いいたしますm(__)m

  • EXCEL・VBAでIEコピー

    またお世話になります。 EXCEL・VBAのみの命令で 既に起動しているIEをアクティブにして 表示されている内容をコピーすることは 可能でしょうか。 なにとぞよろしくお願いします。

  • VBAでIEを操作したいです。

    VBAでIEを操作したいです。 エクセルでデータ管理をしております。 VBA・マクロ等を使用して、ウェブページの入力フォームに自動で入力、ウェブページの結果を再度エクセルに返すことはできますでしょうか? こちらがサイトになります。 モノレート http://mnrate.com/ こちらのサイトはアマゾンの商品の年間の価格推移を調べることができます。 ここに商品の「JANコード」(13ケタの商品ごとについているバーコード)を入力して、「グラフを見る」というボタンを押すと表示されます。 例えば、「Smap!Tour!2002! [DVD] 」という商品が知りたいとします。 その場合「4988002446582」(DVDの商品コード)を入力して「グラフを見る」を押します。 その後、ページが切り替わって切り餅のページが表示されると思います。 表示されたページの商品写真の横にあるASIN:「B00008GEUD」 という数字と、表示されたアドレス「http://mnrate.com/item/aid/B00008GEUD」をエクセルに返したいです。 話を整理させていただきます。 現在エクセルでは、A1セル~A100セルに「JANコード」(13ケタの商品ごとについているバーコード)が入力されております。 そこで「マクロ実行」をします。 そうすると、自動でIEが起動してB1セル~B100セルに「ASINコード」(例:B00008GEUD)、C1セル~C100セルに「ハイパーリンク」(例:http://mnrate.com/item/aid/B00008GEUD) ※エクセルから直接ジャンプできるように青色になったもの を自動で入力。 すべて完了後、IEが閉じてその後MSGで「完了しました」と表示される。 「入門者のExcel VBA」という本と、「EXCEL VBAでIEを思いのままに操作できるプログラミング術」という本を買って、一通り読み切ったのですが難しくて困っております。 分かる方おられましたら宜しくお願い致します。 最初だけしかわかりませんでした。 'IEの起動 Set ie=CreateObject("InternetExplorer.Application") ie.Visible=True 'URLへジャンプ ie.Navigate "http://mnrate.com/"

  • VBAからIEの操作

    グーグルをIEで開いてVBA(語句)を検索して見終わったら IEを閉じる作業をしたいのですが、検索窓にVBA(語句)を 入力するところでエラーとなります。初心者ですが、なんとか 勉強したいのでよろしくお願いいたします。 Sub ie_test_Navigate() Dim objIE As Object Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.google.co.jp/" IE.document.all.q.Value = "VBA" IE.document.all.btnG.Click If MsgBox("IEを閉じますか?", vbYesNo, "終了確認") = vbYes Then objIE.Quit End If Set objIE = Nothing End Sub

  • VBAで既に開いているIEをアクティブにするには

    質問しつれいします。 三流君のサイトをみながら、エクセルのVBAで、IEを開き証券口座にログインするプログラムを作りました。 一つのプログラムでIEを起動して、注文実行まではできるのですが、既に開いている(口座にログインしている)IEをアクティブにしてそこから注文する方法がわからず困っています。 相場が開いている間、シグナルが出た場合、すぐにIEをアクティブにして、注文を入力するプログラムをつくりたいと思っています。 既に開いてるIE(口座にログインしている)を選択し、objIE.navigate "" 'で指定のページに移動できるようにするにはどうしたらいいでしょうか?

  • VBA IE操作について

    こんにちは。いつもお世話になっております。 初心者質問かと思いますが、宜しくお願いいたします。 ご質問したいのは、VBAにてIEを連続で起動、 終了した場合に起きるフリーズについてです。 あるwebサイトにある画像を連続で取得しようとしているのですが、 途中で"応答なし"となり、固まってしまいます。 画像のあるサイトには複数のページがあり、そのページ毎に一つの画像があります。 それらの画像の取得には、下記の動作を何度も繰り返しています。 1) URLを指定してIEを起動する 2) 画像を取得する 3) IEを閉じる (1)に戻る 取得する画像ページは50ページほどあるので、 その分だけくりかえしていますが、10回目ほどで固まってしまいます。 メモリ、またはCPUの不足が原因でしょうか? IEの一時ファイルは削除したのですが、駄目でした。 コードがないのでアドバイスしにくいとおもいますが、 ご指南頂けます方お待ちしています。 windows7,EXCEL2007

  • VBAでIEを操作したいです。

    エクセルでデータ管理をしております。 VBA・マクロ等を使用して、ウェブページの入力フォームに自動で入力、ウェブページの結果を再度エクセルに返すことはできますでしょうか? こちらがサイトになります。 モノレート http://mnrate.com/ こちらのサイトはアマゾンの商品の年間の価格推移を調べることができます。 ここに商品の「JANコード」(13ケタの商品ごとについているバーコード)を入力して、「グラフを見る」というボタンを押すと表示されます。 例えば、「越後製菓 生一番 切り餅 1kg 」という商品が知りたいとします。 その場合「4901075022569」(切り餅の商品コード)を入力して「グラフを見る」を押します。 その後、ページが切り替わって切り餅のページが表示されると思います。 表示されたページの商品写真の横にあるASIN:「B00305HGSG」 という数字と、表示されたアドレス「http://mnrate.com/item/aid/B00305HGSG」をエクセルに返したいです。 話を整理させていただきます。 現在エクセルでは、A1セル~A100セルに「JANコード」(13ケタの商品ごとについているバーコード)が入力されております。 そこで「マクロ実行」をします。 そうすると、自動でIEが起動してB1セル~B100セルに「ASINコード」(例:B00305HGSG)、C1セル~C100セルに「ハイパーリンク」(例:http://mnrate.com/item/aid/B00305HGSG) ※エクセルから直接ジャンプできるように青色になったもの を自動で入力。 すべて完了後、IEが閉じてその後MSGで「完了しました」と表示される。 「入門者のExcel VBA」という本と、「EXCEL VBAでIEを思いのままに操作できるプログラミング術」という本を買って、一通り読み切ったのですが難しくて困っております。 分かる方おられましたら宜しくお願い致します。 最初だけしかわかりませんでした。 'IEの起動 Set ie=CreateObject("InternetExplorer.Application") ie.Visible=True 'URLへジャンプ ie.Navigate "http://mnrate.com/"

  • Excel2003VBAからIE64bitを制御

    Excel2003 VBAから、 CreateObject("InternetExplorer.application")でIEを起動できますが、 XP64bitの場合、IE32bitが起動します。 XP64bitには、IEが32bit版と64bit版が入っています。 Excel2003 VBAから、IE64bitを起動できるのでしょうか? Excel2003 VBAのVB6.0は32bitなので、 そもそも64bitソフトを制御できないものなのでしょうか? IE64bitを起動させるだけなら、Shellとフルパスでできますが、 objIEにオブジェクトとして格納できないので、制御ができません。 ヒントでも構いませんので、ご教授いただけると幸いです。

  • Excel VBA IEの終了方法は?

    お世話になっています。 検索しましたが判らなかったので質問します。 VBAでIEを起動します。 Sub IE起動() Set IE = CreateObject("internetExplorer.application") IE.Visible = True IE.navigate ("http://www.goo.ne.jp") End Sub ここまでは出来ました。 --<質問内容>------ では、IEを終了するには?

  • VBAにて:IEを閉じるにはどうすれば良いですか?

    セルB1にハイパーリンクが設定してあると、以下のコードにて、IEを起動することが出来ます。 IEが起動されたときに、リンク切れがあると”お探しのページはありません”と出ますが、この時にIEを閉じるようにしたいのです。 どのようにすれば実現できるか教えてください。 Range("B1").Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True