「ツール」メニューの「参照設定」のところで
Microsoft HTML Object Library
Microsoft XML, v6.0
を追加して使ってね
重い環境だとhtmlDoc.writeの後、読み込み終わってなくてエラーになることがあるみたい。リトライ処理するといい感じ。
Sub HTTP通信() Dim httpReq As XMLHTTP60 Set httpReq = New XMLHTTP60 httpReq.Open " GET", "https://www.eb.pref.okinawa.jp/kassui/" httpReq.send 'HTTPリクエスト送信 Do While httpReq.readyState < 4 '処理待ち DoEvents Loop Dim htmlDoc As Object Set htmlDoc = New HTMLDocument htmlDoc.write httpReq.responseText '読み込み途中だと例外でるからRETRYに飛ばして再挑戦させる Dim dblTimer: dblTimer = Timer On Error GoTo LABEL_RETRY LABEL_RETRY: DoEvents If 60 < Timer - dblTimer Then '60sでタイムアウト Exit Sub End If Dim hiduke As IHTMLElement Set hiduke = htmlDoc.getElementById("chosui_hiduke") Debug.Print "■日付は「" & hiduke.innerHTML & "」です。" Dim chosuiritsu As IHTMLElement Set chosuiritsu = htmlDoc.getElementById("ritsu_today4") Debug.Print "■本日の貯水率は「" & chosuiritsu.innerHTML & "」です。" Set httpReq = Nothing Set htmlDoc = Nothing End Sub