サービスエラー:Spreadsheets(service error:Spreadsheets)の原因
例えば、セルを編集した際に自動的に並べ替えたいとすると、以下のようなscriptになると思います。 /** * Automatically sorts the 1st column (not the header row) Ascending. */ function onEdit(event){ var sheet = event.source.getActiveSheet(); var editedCell = sheet.getActiveCell(); var columnToSortBy = 1; // column A var tableRange = "A1:G1000"; // What to sort. if(editedCell.getColumn() == columnToSortBy){ var range = sheet.getRange(tableRange); range.sort( { column : columnToSortBy, ascending: true } ); } } onEdit()は、セルを編集した際に実行される。 実行されるscriptは、範囲(A1~G1000)をカラムAを基に昇順で並び替えるというもの。 これで、問題なく動作します。 サービスエラー:Spreadsheetsがでて動かない原因 原因はいろいろあるようだが、私の場合の原因は”行の削除”を行ったことだった。 以下のような場合には、エラーが出るようです。 テーブル内に行が1100行あった場合、 ↓ 行を101行削除する ↓ 結果、テーブル内に表示されている行が999行になる ↓ tableRange = "A1:G 1000 " を指定しても、 現在のテーブル内にあるのは999行 ということで『サービスエラー:Spreadsheets』が発生する模様。 なもんで、範囲を現在ある行数以内で修正したところ、エラーは出なくなった。 エラーが出ないケース 試しに、100行しか表示されていないテーブルに新たにスクリプトを作成し tableRange = &qu