- ベストアンサー
VB6で指定したURLに飛ばしたい。
たびたび質問しております。 すいません。 下記のURLで、新しいウィンドウを作成して、 テキストに書いてあるURLに飛ぶような説明がありますが、これを新しいウィンドウではなく、現在、アクティブのIEのウィンドウにURLを飛ばしたいのですが、 どのようにすればよいでしょうか? http://homepage1.nifty.com/MADIA/vb/vb_bbs/200312_03120126.html
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。KenKen_SP です。 Shell の Windows コレクションをループさせ、既に開かれた IE を調べてます。 ただし、この方法ではローカルアドレスのものも含まれてしまいますので、 LocationURL を調べて判定してます。 また、複数の IE を立ち上げている場合が考えられますが、とりあえず、最初に 見つけた IE でループを抜けてます。 もっと良い方法がありそうですが、、 あと、IE が開かれていない場合の処理を追加する必要がありますね。 Dim SH As Object Dim IE As Object Const cnsURL = "http://oshiete.goo.ne.jp/" Set SH = CreateObject("Shell.Application") For Each IE In SH.Windows() If InStr(IE.LocationURL, "http") > 0 Then IE.Navigate cnsURL Exit For End If Next IE Set SH = Nothing
お礼
お礼が遅くなってすいません。 回答がこなかったので、あきらめていました。 でも、けんけんさんのご回答どおりやったところ、 うまくいきました。 IEとエクスプローラーの判別までつけてくれたのには、 感謝です。 個人的に使うものなので、IEが開かれてないとか細かい条件は、必要ないので、大丈夫です。 本当に助かりました。ありがとうございます。