Sub 取得()
Dim objIE As Object
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate "http://www.google.co.jp/"
objIE.Visible = True
Do While objIE.Busy = True
DoEvents
Loop
Debug.Print objIE.Document.body.innerHTML
Set objIE = Nothing
End Sub
これだと、
<DIVstyle="DISPLAY:none"id=cst></DIV><TEXTAREAstyle="DISPLAY:none"
id=csi></TEXTAREA><SCRIPT>if(google.j.b)document.body.style.visibility='hidden';</SCRIPT>
からしか取得されないのですが、
実際のソースを見ると
<!doctype html><html itemscope="itemscope" itemtype="http://schema.org/WebPage">
で始まってます。
VBAソースのてっぺんから取得する方法を教えてください。
innerHTML以外を使うのでしょうか?
MSXML2.XMLHTTPを使うと、<!doctype html>から取得可能です。
Sub test()
Dim objIE As Object
Dim Str As String
Dim tmp As Variant
Dim i As Long
Set objIE = CreateObject("MSXML2.XMLHTTP")
objIE.Open "GET", "http://www.google.co.jp/", False
objIE.Send
Str = objIE.responseText
tmp = Split(Str, Chr(10))
For i = 0 To UBound(tmp)
Debug.Print tmp(i)
Next i
Set objIE = Nothing
End Sub
お礼
ご回答ありがとうございます。