質問: https://docs.google.com/spreadsheets/d/1DYYLta7UHgyY0-59rcTQijyd5Ih-Wg8GSNzLz3Hi3Tg/edit?usp=sharing こちらのスプレッドシートで、Googleplayからアプリ名、Email、社名を抜き出しています。 全部できましたが、C列の社名だけオートフィルをすると埋まっていたところがrefになってしまいます。 > > 配列結果は C3 のデータを上書きするため、展開されませんでした。 > > とのこと。 > > > しかし、みたところ上書きするようなものは特になく。。。 以下のC2の関数をオートフィルすると表示されていたものが#REFになってしまいます。 ``` =IMPORTXML(D2,"//a[contains(@href,'https://play.google.com/store/apps/developer?id')]") ``` ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/83eb35bc7bf09877a4e869a25fdbc3cf.png) ちなみにC3とC4を消すと戻るときもあれば、全部消して初めて戻る時もあります。 このエラーはどうやったら直せますでしょうか?
回答: 自己解決しました。 結論、TEXT関数でまとめて解決しました。 ``` =text(IMPORTXML(D2,"//acontains(@href,'https://play.google.com/store/apps/developer?id')]"),"") ``` ![イメージ説明 まず、なぜエラーが出るか。 ImportXMLの場合、基本的に展開できる場合は、他セルにまでデータを展開するようです。 そのため、以下の画像では空白に見えるH3,4,5にも空白の値が展開され入っているみたいです。 そのため、適当に数値を入れると上書きした扱いになるのでこんな風にエラーになります。 !イメージ説明 加工されたデータは展開されなくなるらしく、textで囲みTEXT化する処理をすることで 解決しました。 !イメージ説明