GASについての質問です。
特定の列が変更された時に作動するスクリプトを書きました。
ただこの場合だと1つのセルのみが変更された場合は問題ないのですが、範囲指定で2つ以上のセルが変更された時に指定列が範囲内にあっても作動しません。
こういった場合は範囲内を順に判別していくようなスクリプトを書けばいいのでしょうか?
配列で回そうかと思ったのですが、oneditで取得しているオブジェクトの変換がイマイチ上手くいかず...
ご回答いただけると助かります。
1var sheet = SpreadsheetApp.getActiveSheet(); 2var lastrow = 366; 3 4 5function onEdit(e){ 6 var range = e.range; 7 8 if (range.getColumn() == 5){ 9 10 var month = sheet.getRange('N1').getValue(); 11 var data = sheet.getRange('A1:C366').getValues(); 12 var count = 0; 13 for (var i = 1;i < lastrow ;i++){ 14 if(data[i][0].getMonth() + 1 == month && 15 data[i][2] == ""){ 16 count++; 17 } 18 } 19 20 sheet.getRange('C369').setValue(count); 21 } 22 23 }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。