API XML/JSON响应和VBA解析它

API XML/JSON响应和VBA解析它

问题描述:

我有API,它给出了基于带有令牌和符号的构造URL的股票价格,此API返回基于Web并返回<root></root>中的XML/JSON格式数据及其中的数据。下面是一个例子。API XML/JSON响应和VBA解析它

<root> 
    <n5323 type="float">31.35</n5323 > 
    <n3221 type="float">9.06</n3221 > 
</root> 

我想检索使用VBA(31.359.06)的价格在Excel中,请帮我在这如何实现。并不是n5323n3221是动态生成的,每次都不相同。

我的VBA代码是如下

Dim strXMLSite As String 
Dim objXMLHTTP As MSXML2.XMLHTTP 
Dim objXMLDoc As MSXML2.DOMDocument 
Dim objXMLNodexbrl As MSXML2.IXMLDOMNode 
Dim objXMLNodeDIIRSP As MSXML2.IXMLDOMNode 
Set objXMLHTTP = New MSXML2.XMLHTTP 
Set objXMLDoc = New MSXML2.DOMDocument 

strXMLSite = "http://testserver/volume/daily?token=' + token$ + '&ticker='+Symbol$+'" 

objXMLHTTP.Open "POST", strXMLSite, False 
objXMLHTTP.send 
objXMLDoc.LoadXML (objXMLHTTP.responseText) 

Set objXMLNodexbrl = objXMLDoc.SelectSingleNode("root") 
Set objXMLNodeDIIRSP = objXMLNodexbrl.SelectSingleNode("root") 

Worksheets("Sheet1").Range("J1").Value = objXMLNodeDIIRSP.Text 
+0

添加对“Microsoft XML,v6.0”的引用,实例化一个DOMDocument和loadXML响应。 – GSerg

+0

你能否把代码snipet放在这里?我已经更新了我的代码在主后... – user5769212

+0

可能重复的[MSXML“系统找不到指定的资源”](http://stackoverflow.com/q/4041687/11683) – GSerg

如果你不知道什么节点名称有,你枚举节点。

Dim n As IXMLDOMNode 
For Each n In objXMLDoc.documentElement.childNodes 
    Debug.Print n.nodeName, n.Text 
Next