プロが教える店舗&オフィスのセキュリティ対策術

以下のExcelVBAでエラーが起きます。回避方法はないでしょうか?
---------------------------------------------------
dim oie as object,hd as HTMLDocument
oie.visible = true
oie.navigate url
set hd = oie.document
---------------------------------------------------
実行時エラー'462'
リモートサーバーがないか、使用できる状態ではありません。
---------------------------------------------------
ツールの参照設定で
Microsoft HTML Object と
Microsoft Internet Controls
にチェック入れてます。

対応の仕方が判る方、教えてください。

A 回答 (1件)

こんにちは



ご提示のコードでは、変数oieの実態が設定されていないので、ご提示のエラーの前に
 実行時エラー’91’
 オブジェクト変数またはWithブロックが設定されていません。
になるはずですけれど?
また、ドキュメントを取得する前に、表示終了を待つ必要があると思われます。

ひとまず、ご提示のコードの出典を再確認してみてください。
あるいは、IE制御に関しては検索すれば情報がたくさんありますので、そちらを参考にしても宜しいでしょう。
(以下は、一例です)
https://excel-ubara.com/excelvba4/EXCEL217.html
https://qiita.com/Tamarin_3/items/0db2431777308e …

なお、仮にブラウザで表示できて、ドキュメントの取得に失敗しても、ご提示のエラーにはならないはずなので、もしかすると、IEの代わりにEdgeが立ち上がっていたりしませんか?
Edgeの場合は、VBAから直接の制御は難しいので、Edgeに変わらないようにしておく必要があります。


とはいうものの、
IEのサポートは終了したようですので、今後は使えなくなるものと想像します。
(IEをお持ちなら、当面は使うことはできますが・・)
早いうちに Selenium 等への移行をご検討なさった方が宜しいのではないでしょうか。
https://excel-ubara.com/excelvba4/EXCEL_VBA_401. …
https://www.selenium.dev/documentation/
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
IEを開くやり方でなく、MSHTMLでソースを取得するやり方でできました。

お礼日時:2022/02/03 13:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A