我正在尝试从Google的Map API获取lat / long值。我可以毫不费力地在Excel中创建IE对象并打开浏览器,但我有时间浏览返回的XML文档以获取我需要的值。
我创建了HTMLDocument,引用似乎有效,但我很难理解如何导航它。有没有办法获取整个HTML输出的字符串?从那以后我就能得到我需要的东西。
答案 0 :(得分:0)
使用MSXML - 您需要在Excel VBA IDE的工具/参考中引用Microsoft XML。
您可以从文件(Load
)或字符串(LoadXML
)加载XML。在我的示例中,我从文件加载:
<?xml version="1.0" encoding="utf-8"?>
<testxml>
<tests>
<test nr="1">Number 1</test>
<test nr="2">Number 2</test>
<test nr="3">Number 3</test>
<test nr="4">Number 4</test>
</tests>
</testxml>
加载文件的VBA:
Option Explicit
Sub TestXML()
'***** Declare document
Dim oXmlDoc As DOMDocument
Dim bRet As Boolean
'***** Create empty document
Set oXmlDoc = New DOMDocument
'***** Load XML from file
bRet = oXmlDoc.Load("c:\temp\test.xml")
'***** Manipulate XML
MsgBox oXmlDoc.Text
MsgBox oXmlDoc.XML
MsgBox oXmlDoc.SelectSingleNode("//testxml/tests/test[@nr='3']").Text
'***** Clean up
Set oXmlDoc = Nothing
End Sub