Google Apps Script(GAS)で Spreadsheet の操作
Google Apps Script(GAS)で Spreadsheet を操作したいのでメモ。
/** @OnlyCurrentDoc */
は関連付けられたドキュメントにのみ動作する。- デバッグ用のその場限りのようなログは
Logger.log()
を使用する。 - ドキュメントに関連付けられたスクリプトはドキュメントを削除すると、スクリプトも削除される。
- シートのズームを設定するようなメソッドはない模様。
- ワークブック内のセル数の制限は 5000000(500万)まで。
- エラーメッセージの例:「Exception: この操作を行うと、ワークブック内のセル数が 5000000 の制限を超えてしまいます。」
関連URL
Excelとの対応
Excel | Spreadseet | GAS のクラス |
---|---|---|
ブック | ワークブック | Spreadsheet |
シート | シート | Sheet |
サンプル
関連付けられたスプレッドシートの「テンプレート」シートをその右側に複製し、その日付の名前をつけて、「A2」セルに日付を記入する。
/** @OnlyCurrentDoc */ function insertNewSheetOfTodayAndSetDate() { var templateSheetName = "テンプレート"; var ss = SpreadsheetApp.getActiveSpreadsheet(); var templateSheet = ss.getSheetByName(templateSheetName); var currentDate = new Date(); var todayString = Utilities.formatDate(currentDate,"JST","yyyy-MM-dd"); var newSheet = ss.getSheetByName(todayString); if (newSheet == null) { try { newSheet = ss.insertSheet(todayString, templateSheet.getIndex(), {template: templateSheet}); } catch(e) { Logger.log(e); return; } } newSheet.activate(); var dateCell = newSheet.getRange(2, 1); if (dateCell.getValue() == "") { dateCell.setValue(todayString); } else { Logger.log(dateCell.getValue()); } }
トラブル関連
「https://script.google.com/」を開こうとするとエラーが起こるトラブルがある。
解決方法は不明。
エラーメッセージの対訳:
英語 | 日本語 | ドイツ語 |
---|---|---|
Something went wrong | エラー | Fehler |
Please reload the page to try again. | ページを再読み込みして、もう一度お試しください。 | Aktualisieren Sie die Seite, um es noch einmal zu versuchen. |
DISMISS | 閉じる | SCHLIESSEN |
RELOAD | 再読み込み | AKTUALISIEREN |
関連URL
Something went wrong when accesing script.google.com [113123489] - Visible to Public - Issue Tracker
- No access to "My Projects" and "All Projects". [122881607] - Visible to Public - Issue Tracker
- Something Went Wrong [121092508] - Visible to Public - Issue Tracker
参考ページ
- Overview of Google Apps Script | Apps Script | Google Developers
- Extending Google Sheets | Apps Script | Google Developers
- Class Spreadsheet | Apps Script | Google Developers
- Class Sheet | Apps Script | Google Developers
- Logging | Apps Script | Google Developers
In Google sheets how can I Script the manipulation of the default Zoom? - Stack Overflow