スプレッドシートの書き方

基本の書き方

スプレッドシートからJSONへの基本的な変換は、以下の形です。

  1. 1行目をフィールドとして利用
  2. 1行ごとにオブジェクトへ変換

このスプレッドシートの場合、

基本的な書き方(スプレッドシート)

以下のようなJSONを返すAPIを作成します。

基本的な書き方(JSON)

この例のfavoritesのように、同じフィールド名を持つ列が複数ある場合は、
配列形式に変換します。

よくある失敗例

うまく変換されない場合は、以下の点をご確認ください。

  • 1行目や1列目が空ではないか?
  • 途中に空行/空列がないか?
  • 共有は正しく設定されているか?
  • スプレッドシートのURLが正しく設定されているか?
  • スプレッドシートではなく、Excel(XLSX)などではないか?

サンプルのスプレッドシートもご用意しております。
共有権限も設定済みなので、こちらも合わせてご確認ください。

スプレッドシート例(都道府県一覧)

また、Google Workspaceの共有制限により、
システムアカウントの共有ができない場合は、
Googleアカウントとの連携をお試しください。

ログインアカウントでスプレッドシートを読み込むことができ、
システムアカウントとの共有が不要でご利用いただけます。

Settingsの「アカウント連携」より、設定ください。

変換範囲

デフォルトの場合、JSON形式へは以下の範囲で変換します。

  • 1行目から空セルまで
  • 1列目から空セルまで

空欄セル以降は、APIの結果に反映されないため、
メモ欄や追加予定の行として利用できます。

また、読み込み開始位置は、
APIオプションの読み込み開始位置の変更で変更可能です。

なお、プランごとの最大行数を超えるシートの場合、
ヘッダ行を除く、最大行数までのJSONに変換します。
(Freeプランであれば、51行までが対象)

変換範囲(スプレッドシート) 変換範囲(JSON)

スプレッドシート内の関数

スプレッドシート内で関数を利用している場合、
APIは関数の結果の値を返します。

関数の扱い(スプレッドシート) 関数の扱い(JSON)

また、GOOGLETRANSLATE()関数を利用することで、
多言語翻訳した結果をAPI化することもできます。

関数の扱い2(スプレッドシート) 関数の扱い2(JSON)

計算はスプレッドシートが行っており、スプレッドシートを開いた際に再計算されます。
そのため、GASやSheets APIを利用した自動書き込みと組み合わせて、APIの自動更新を行う場合、
計算結果が更新されない場合がございますので、ご注意ください。

その場合は、

  • 書き込み後に再計算したり、
  • 関数を使わず、計算結果を書き込む

など、再計算の結果を受け取れる形でスプレッドシートへ書き込んでください。