Excel VBAを活用して、IE制御をするプログラムを作成している中で操作できないボタンがあり、
操作方法をご教示いただけませんでしょうか。
以下のコードに沿って試していくと、住所入力まではうまくいくものの、住所入力後の
遷移サイト上の「選択中の情報」欄にある「洪水」ボタンを押すことがどうしてもできません。
同様に「土砂災害」ボタンおよび「検索結果」欄の「×ボタン」も押下したいのですが、同様に
制御できず、住所入力後の検索ボタン押下時との制御の違いが理解できずにおります。
VBA
1Sub hazardmap() 2 3 Dim ie As InternetExplorer 4 Dim txt As HTMLTextAreaElement 5 Dim inputTags As IHTMLElementCollection 6 Dim inputTag As IHTMLElement 7 Dim inputTags2 As IHTMLElementCollection 8 Dim inputTag2 As IHTMLElement 9 10'IEでHPを開く。 11'--------------------------------------------------------------------------------------------------------- 12 Set ie = CreateObject("InternetExplorer.Application") 13 ie.Visible = True 14 ie.Navigate "https://disaportal.gsi.go.jp/" 15 Do While ie.Busy Or ie.ReadyState < READYSTATE_COMPLETE 16 DoEvents 17 Loop 18'--------------------------------------------------------------------------------------------------------- 19 20'ハザードマップにセルの住所を入力して検索 21'--------------------------------------------------------------------------------------------------------- 22 Set txt = ie.document.getElementById("query") 23 txt.Value = "東京都" 24 Set inputTags = ie.document.getElementsByTagName("IMG") 25 For Each inputTag In inputTags 26 If InStr(inputTag.src, "https://disaportal.gsi.go.jp/hazardmap/image/skin/search.png") > 0 Then 27 inputTag.Click 28 Exit For 29 End If 30 Next 31 32 Do While ie.Busy Or ie.ReadyState < READYSTATE_COMPLETE 33 DoEvents 34 Loop 35 36'「洪水」ボタンをクリック 37'--------------------------------------------------------------------------------------------------------- 38 Set inputTags2 = ie.document.getElementsByTagName("img") 39 For Each inputTag2 In inputTags2 40 If InStr(inputTag2.src, "image/skin/kouzui.png") > 0 Then 41 inputTag2.Click 42 Exit For 43 End If 44 Next 45 46End Sub
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/13 13:05