下記をエクセルVBVで動かしてます。
vba
1 2 3Function getTitleFromISBN2(ISBN As String) As String 4 Dim xml, result As Object 5 Dim url, status As String 6 Dim xlmtxt As String 7 8 url = "http://shopping.yahooapis.jp/ShoppingWebService/V1/itemSearch?appid=*****************************&isbn=" & ISBN 9 10 11 12 13 Set xml = CreateObject("Microsoft.XMLDOM") 14 xml.async = False 15 xml.Load (url) 16 17 18' Set result = xml.SelectSingleNode("/ResultSet") 19 20 21' If result.SelectSingleNode("totalResultsAvailable").nodeTypedValue = 0 Then '検索件数0なら 22' getTitleFromISBN = "該当なし" 23' Exit Function 24' End If 25 26 Set result = xml.SelectSingleNode("/ResultSet/Result/Hit") 27 getTitleFromISBN2 = result.SelectSingleNode("Name").nodeTypedValue 28 29 30 31 32End Function
ahoo!Web APIからは
xml
1 2 3<?xml version="1.0" encoding="UTF-8"?> 4 5-<ResultSet firstResultPosition="1" totalResultsReturned="1" totalResultsAvailable="11" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:yahoo:jp:itemSearch" xsi:schemaLocation="urn:yahoo:jp:itemSearch http://shopping.yahooapis.jp/ShoppingWebService/V1/itemSearch.xsd"> 6 7(function() {window.klTabId_kis='ie_2852_0x4b58d38';})();(function () { var klTabIdEventName = "klTabId_kis"; if (document.createEvent) { var fireEvent = document.createEvent("Event"); fireEvent.initEvent(klTabIdEventName, true, true); window.dispatchEvent(fireEvent); } else if (document.createEventObject) { // Due to ie8 limitations (it doesn't support user custom events) // we use document.documentElement.klTabId_%PRODUCT% attribute for custom event emulation. // Incrementing this attribute emits 'propertychange' event, // for supporting ie8 you should attach 'propertychange' handler on document.documentElement // and skip all calls except then event.propertyName == klTabIdEventName if (document.documentElement[klTabIdEventName]) { document.documentElement[klTabIdEventName] = 1; } else { document.documentElement[klTabIdEventName]++; } } })(); 8 9-<Result> 10 11 12-<Request> 13 14<Query/> 15 16</Request> 17 18<Modules/> 19 20 21-<Hit index="1"> 22 23<Name>ブライトンネット VAIOデジタイザースタイラスペン替え芯 BM-VDTSIN/S</Name> 24 25<Description/> 26 27<Headline/> 28以下略
見たいに帰ってきます。
Nameは
Set result = xml.SelectSingleNode("/ResultSet/Result/Hit") getTitleFromISBN2 = result.SelectSingleNode("Name").nodeTypedValue
でとれるのですが
-<ResultSet firstResultPosition="1" totalResultsReturned="1" totalResultsAvailable="11"
部分のfirstResultPosition等の値を取り込む方法が判りません。
教えて頂けないでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/04 10:40
2015/12/04 20:23
2015/12/05 08:00
2015/12/07 07:55
2015/12/07 08:29
2015/12/07 09:01 編集