- ベストアンサー
IEの操作(Busy)でエラーになる
下記コードを実行するとBusyの所でエラーになってしまいます。 何が悪いのでしょうか?教えて下さい。 Excel2000で起動しました。 Sub tst031() Dim fff As String 'ファイルパス Dim objIE As Object 'オブジェクト Dim Myhtml As Variant 'HTMLタグデータ Dim objTAG As Object '制御htmlファイル fff = "http://oshiete.goo.ne.jp/" 'Webページ表示 Set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate fff '画面表示待ち Do While objIE.Busy = True DoEvents Loop For Each objTAG In objIE.document.body.all Debug.Print objTAG.tagName Next objIE.Quit 'MsgBox Myhtml End Sub
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.2 です。 xpとie6では動くようでした。 busyがおかしいのはCreateObjectされたobjIEでの問題のようなので、excelと言うよりie(またはそのバージョン)またはosに関わる問題(と言うか違い)ではないかと思ったためです。 ちゃんと動いた会社のieのバージョンは6ではないかと思います。 ie7は色々扱いが難しいという話を見た事があって http://www.happy2-island.com/vbs/cafe02/capter00711.shtml それに関わる問題かもしれません。 ただ、documentの取得のエラーなどではなくbusyの取得がエラーになるのはちょっと不明なのですが(普通は取得する事自体はエラーにならなそう)・・・ ie6なので実際にチェックできないのですが、そちらの問題かもしれません。
その他の回答 (2)
- hotosys
- ベストアンサー率67% (97/143)
Excelは2000と言うことですが、OSとieのバージョンは何でしょうか? osはxpそれともvistaまさか7? ieのバージョンは6か7か8かそれ以外か?
お礼
回答ありがとございます。 OSはVISTAでIEは7です。 試しに会社のXPで2003を使い IEの操作をやってみましたがこちらは問題なく出来ました。 何かのバージョンが悪いのでしょうか…。
- cistronezk
- ベストアンサー率38% (120/309)
とりあえず >Set objIE = CreateObject( の次に objIE.Visible = True を追加したらどうなります?
お礼
回答ありがとうございます。 追加しても駄目でした。 今度はリモートがないとか言われちゃいました。
お礼
教えてもらったURLの通りにしたら出来ました! ありがとうございます。助かりました!! .