[GAS] スプレッドシートで簡単にjson形式で出力する方法を見つけた

練習も兼ねて以前から気になっていたJSONをWebへ実装をしてみたいと初心者ながらに思い、まずJSONのデータを作ってみることにしました。

Excelを持っていないこともありGoogleのスプレッドシートを利用してJSONの書き出しを行うことをきめました。

しかしGoogleで「スプレッドシート json 書き出し」で検索し上位から順にスクリプトコードを試して行うも「スクリプト関数が見つかりません: doGet」と表示されたり、試行錯誤して書き出しても括弧”()”を”{}”の形にできず行き詰まりました。

スプレッドシートで簡単にjson形式で出力する方法

Javascriptも良くわかっていない初心者にはJSONなんて手を出すなということかなと諦めかけた時、Youtubeで見つけた動画「How To Export JSON From Google Sheets」で簡単にJSONを書き出す事ができました。

この動画の通りに行うとメニュー上にExport Jsonという項目ができるので、今までの苦労はなんだったんだっていうくらいすぐ書き出せるようになります。

方法

私のように積んでいる初心者の方でも簡単にJSONの書き出しが行えます。

行えばできるのですが、私は動画を見ても英語なのではじめからできたわけではないので、同じように手間取った方のために行った事を書きたいと思います。

スプレッドシート

スプレッドシートの中身は下記のようなものです。実験する方でスプレッドシートの入力がまだの方はスプレッドシートにコピペして使用してください。

IDCoursePricedescription
1Basic ¥3,0001description_description_description
2intermediate¥5,0002description_description_description
3advanced¥2,0003description_description_description
4expart¥15004description_description_description

手順

動画の後半のトリガー部分は良くわからなかったので飛ばしてます。

  1. スプレッドシートの1行目を固定する。(表示→固定→1行)
    ※これを忘れるとExport JSONがでません
  2. 1行目は英語で書く
    ※日本語にすると書き出し結果がずれます、1行目以外は日本語も読み込みました
  3. PamerafoxさんのGitHubページ :https://gist.github.com/pamelafox/1878143 のコードをコピペ
    ※ありがとうパメラフォックスさん
  4. 念のためスクリプトエディタをcode.gsで新規作成、ペーストして保存
  5. スプレッドシートを更新→Export JSONを確認
  6. 試しに書き出し「Export JSON for this sheet (現在のシート)」も 「Export JSON for All sheets (全てのシート)」もサクッと結果が表示されました。

自分の勉強的にはこの書き出し方法でいいのか?と疑問にも思いますがパメラさんのコードがすごすぎてどうでもいいです。
やった事はほぼコピペだけとあまりに簡単にできたので、本当におどろきました。

実装までやるには夜遅くなってしまいましたが、とりあえずすっきりした気持ちで健全な時間に寝られそうです。