IMPORTXML-スプレッドシート関数 のエラー対策(インポートされたコンテンツは空です)

IMPORTXML-スプレッドシート関数 のエラー対策(インポートされたコンテンツは空です)

スプレッドシートでYahoo!APIからもらってきたXMLデータを拾おうとしていたところ

根本的な部分で詰まっていたので備忘録を書き留めておきます。

IMPORTXMLはXML構造のデータからタグに格納された部分を引っ張ってこれる便利な関数です。

しかしこれ、癖が強い関数だったりして、お手上げ状態でした。

以下、エラー:インポートしたコンテンツは空です の発生の原因となっていたものです。

・指定するXpathクエリの大文字小文字の厳密な区別

・XML出力時に付与されるネームスペース( xmlnsの記述)

Xpathの記述は大文字小文字をしっかり区別しましょう。

そして、ここが最も時間がかかった部分なんですが、XMLのネームスペースに関する記述

<ResultSet xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:yahoo:jp:auc:mySellingList” xsi:schemaLocation=”urn:yahoo:jp:auc:mySellingList http://auctions.yahooapis.jp/AuctionWebService/V2/mySellingList.xsd” totalResultsAvailable=”1″ totalResultsReturned=”1″ firstResultPosition=”1″>

この部分、これをコメントアウト(<!--~-->)し、

ネームスペース記述のない<ResulteSet>タグを新たに追加することで

IMPORTXMLで上記エラーは出なくなりました。

エラー対策につかれたので簡単にまとめました。。。

 

もしお困りの方はお試しあれ。