いつもお世話になっています。
次のようなフレーム構成のページで特定のフレーム内の「更新」ボタン
をVBから押したいのですがうまくいきません。(Windows XP VB6.0)
FRAME 0 <XXX.html>
FRAME 1 <YYY.html>
FRAME 2 <FRAME SET>
FRAME 0 <AAA.html>
FRAME 1 <BBB.HTML>
XXX.htmlの「更新」ボタンを押すことは、次の記述でできるのですが
With Me
'検索
Set objDocument = .WebBrowser1.document.frames(0).document
Set objInput = objDocument.getElementsByTagName("INPUT")
For Each objTarget In objInput
If objTarget.Value = "更新" Then
objTarget.Click
End If
Next
End With
BBB.htmlの更新を押すにはどうしたら良いのかわかりません。
Set objDocument = .WebBrowser1.document.frames("BBB.html").document
と記述すると、実行時エラー'-2147352567(8002009)'
例外が発生しました。となります。
frames(3)でも同様です。
BBB.htmlだけを単独で表示させれば簡単なんですが各プレームで表示
されるhtml間がJavaScriptで相互関係にありBBB.htmlだけを表示させ
て「更新」を押しても意味のない結果となり、どうしても全体を表示
中にBBB.htmlの「更新」を押す必要があります。
どなたか解決策をご指導お願いいたします。
frames(2)もだめですか?
通りすがり様。ありがとうございます。
frame(2)は単にフレームセットが記述されたページの
ためエラーとはなりませんが、INPUTタグがありません
ので「更新」ボタンは見つかりません。
通りすがりさんのレスもっと深読みすべきでした。
申し訳ありません。
Set objDocument = .WebBrowser1.document.frames(2).document.frames(1).document
Set objInput = objDocument.getElementsByTagName("INPUT")
で解決しました。
ありがとうございました。
ツイート | ![]() |