例:あなたは上の編集トリガーをインストールすると編集トリガーにインストールされています...どのシートを編集しましたか?
、あなたの関数は、開始と終了の行と列を渡されます。しかし、編集されたシートはありません。
私の最初の考えは、SpreadsheetApp()。getActiveSheet()を取得することでしたが、それは動作しません。
サンプルスプレッドシートのセルを編集します。インストールされたon-editトリガーは、編集した内容を示す値をSheet1に入力します。今すぐシート2またはシート3に切り替えて何かを編集してください。常にSheet1が編集されたことを報告します。
トリガーのコード:
function my_on_edit(e) {
//the object passed in, e, doesn't know what sheet was edited. Really!
var ss = SpreadsheetApp.getActiveSpreadsheet();
var spreadsheetname = ss.getName();
var thesheet = ss.getActiveSheet();
var sheetname = thesheet.getName();
//Tell us what was edited, please.
ss.getSheetByName("Sheet1").getRange("A2:E2").setValues([[ spreadsheetname, sheetname, e.range.rowStart, e.range.columnStart, Utilities.jsonStringify(e)]]);
}
どのように私はシートを編集し得ることができますか?これは私の間違いですか?これはバグですか?イベントの処理方法が不足していますか?