FULL STUCK DIARY

だいたい行き詰まっている備忘録

Google Spreadsheet を JSONファイルとしてダウンロードしたい(1)

GASとNode.jsでどうにかならないかと格闘した記録です。結論から言うとすんなりできなかったので続きます。

ゴール

JavaScript から API を叩いて、スプレッドシートjson ファイルとしてローカルにダウンロードできるようにしたい。

ただし業務効率化の一貫なので、作成するWebアプリのアクセスは社用のドメイン制限内に限る。

GASでスプレッドシートjsonファイルとして取得できるAPIをつくる

スプレッドシートといえばGAS。jsonファイルのダウンロードができないか探してみます。

いい加減ググることから卒業したいんですが、未だぶっつけで公式ドキュメントと格闘しようとすると100倍くらい時間がかかって挫折しかねないので結局ググる

qiita.com

素晴らしい記事をみつけました。何か有用性があるかもしれないと思い後半のパラメータつきのコードをお借りしてWebアプリを作成、出てきた実行用URLにブラウザでアクセスしてデータ取得成功。

1つだけ、最初の実行時に

TypeError: null のメソッド「getDataRange」を呼び出せません。

というエラーが出たんですが、対象にしているシートのタブ名がスクリプトと符合していないだけでした。このスクリプトでは Sheet1 と文字列指定している*1のですが、日本語環境でスプレッドシートを作成した際のデフォルトのタブ名は シート1 なので注意が必要かもしれません。

こちらも参考になった。

qiita.com

公式はこの辺らしい。

Content Service  |  Apps Script  |  Google Developers

ここまでは順調です。次はこの作成したAPIに、ローカルからアクセスする方法を探していきます。

*1:doGet()2行目