関数のようなものでおもしろいことが実現できるとかなり楽しいのです。いうわけで、今回はGoogleスプレッドシート(エクセルGoogleオンライン版)で外部データを引っ張ってくるimport関数のサンプルをご紹介。関数といっても、Googleスプレッドシートで下記画像のようにヘルプ表示されるので、苦手でも気にする必要はありません。セルに一部を打ち込むだけでサジェスト機能が働きます。ちなみに関数を使うときは上にある「数式」タブをクリックしてください。ImportXMLたとえば下記のような関数をセルに入れてみます。=ImportXML("www.google.com","//a/@href")すると、下のようにGoogle.comのページに張られているリンクの一覧が排出されます。変更すれば、ページ内にある画像へのパスが表示されるというわけです。ImportDataこちらはCSVやTSVファイルを読み込んでくれるもの。=ImportData("ファイルのアドレス")↓のように読み込むのですが、ファイルの文字コードが「utf-8」になっていないと文字化けするのと、100行を超えるとエラーになるので注意。行数を増やして欲しい。ヒートマップを作るときには国名コードが必須なのでちょっと便利。ImportHtmlこれはすごい。共にちょっと物議をかもし出しそうな。これは指定したサイトの特定の部分を拾ってくるもの。"table",2)↑このサンプルは、Wikipediaの「ソーシャル・ネットワーキング・サービスの一覧」ページにある2番目の<table>の中身を拾っているもの。ちなみに結果は↓のようになります。元データのセルの中に余分なデータが入っていると、当然ながらデータが壊れてしまいますので注意。<dl>などのリストタグにも対応しているようです。RSSやATOMフィードを読み込めるので、使い方次第ではおもしろいこともできそう。=ImportFeed("http://feeds.feedburner.jp/webmarketing")↑このサンプルは、このブログのRSSを拾っているもの。Blogoscopedで紹介されていたものです。他のシートに読み込みたいデータ範囲に名前をつけてあげると、この関数で一気に読み込むことが可能になります。やってもほとんど手間が変わらないのでは?と感じましたが念のため。公開URLのKeyは、↑の部分を使います。「範囲につけた名前」は↑のような手順で作成します。試したい方はスプレッドシートへどうぞ。なんだかこういうのっておもしろいですね。プログラマーから見たらわずらわしく感じるのかもしれませんが、知識がなくても楽しめるのは素晴らしい。