dポイントプレゼントキャンペーン実施中!

こんにちは
以下のスクリプトで質問があります。

objIE.documentをウオッチリストに登録して確認すると「変数なし」
htmlDocを同様に確認するとプロパティなどの要素がが表示されます。

htmlDocに代入していると思うので、
objIE.documentにも同様に表示されてもいいような気がしますが
なぜ表示されないのでしょうか?

このページを読み込んだ時objieのすべての要素をしゅとくしているのではないのでしょうか?


Sub testIE()
Dim objIE As InternetExplorer 'IEオブジェクトを準備
Set objIE = CreateObject("Internetexplorer.Application") '新しいIEオブジェクトを作成してセット

objIE.Visible = True 'IEを表示
objIE.navigate "http://www.jreast.co.jp/" 'IEでURLを開く

Do While objIE.Busy = True Or objIE.readyState < READYSTATE_COMPLETE '読み込み待ち

DoEvents

Loop

Dim htmlDoc As HTMLDocument 'HTMLドキュメントオブジェクトを準備
Set htmlDoc = objIE.document 'objIEで読み込まれているHTMLドキュメントをセット ①

Debug.Print htmlDoc.Title 'HTMLドキュメントのタイトルを表示

End Sub

「vbaからIEを操作するための記載したさ」の質問画像

A 回答 (1件)

こんにちは。



>このページを読み込んだ時objieのすべての要素を取得しているのではないのでしょうか? (一部訂正)
確かに、全部取得しています。

全体的には、 objIE.document.body.innerHTML
を、テキストファイルに、落としてその中で調べることができます。

はっきりしたことは分かりませんが、対象のobjIE/WebサイトのHTMLは、全体的にはオブジェクトとしていろいろあるので、逆に雛形が作れず見れないのかと想像しています。

ふつう、私は、こういう場合の開発は、Debug ツールを使わないで、直接、IEのF12開発ツールで、画面を半分に割って、それで調べながら行っています。そして、Class や ID を切り出して、その中身を調べます。
    • good
    • 0

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