- ベストアンサー
VBA IE読み込み出来ないときの処理
- VBAでIE読み込みができない場合の処理方法について教えてください。
- Excel VBAでのIEの読み込み完了までの待機処理のサンプルがありますが、読み込めなかった場合の中止処理についても知りたいです。
- また、よりスマートな方法があれば教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
イベントドリブンでやるのはいかがでしょうか。 イベントを捕捉するためにクラスモジュールに記述する必要があります。 簡便にクラスモジュールである、シートモジュールに記述して試してみました。 'Microsoft Internet Control 'Microsoft HTML Object Library 'に参照設定 Public WithEvents ie As WebBrowser Sub test() Set ie = CreateObject("InternetExplorer.Application") ie.Visible = True ie.navigate "http://www.hoge^3.jp/" 'ありそうもないURL End Sub '下記でエラーがトラップできます '但しGoogle Tool Bar アドインが有効だと、検索画面に移ってしまってNavigateErrorになりませんでした。 Private Sub ie_NavigateError(ByVal pDisp As Object, URL As Variant, Frame As Variant, StatusCode As Variant, Cancel As Boolean) Debug.Print pDisp.Name Debug.Print URL Debug.Print Frame Debug.Print StatusCode Cancel = True End Sub 'NavigateErrorと、エラーコードについてはこちら 'http://msdn.microsoft.com/en-us/library/bb268221(v=vs.85).aspx 'http://msdn.microsoft.com/en-us/library/bb268233(v=vs.85).aspx 首尾良く読込完了のイベントDocumentComplete、NavigateComplete2等は下記をご参照下さい。 http://d.hatena.ne.jp/dayflower/20070926/1190787926 こちらもご参考まで。 http://okwave.jp/qa/q8434979.html
お礼
なるほど。 サンクス