Скрипт квоты для ростера

Я пытаюсь создать скрипт, который считывает определенный столбец (B), проверяя каждую ячейку на предмет «это значение <120?».

Если значение <120, я хочу, чтобы скрипт добавил значение «1» в соответствующую ячейку в другом столбце (E).

Это то, что я придумал до сих пор, но это не работает, и я не могу понять, почему.

      function quota1() {

 var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Roster");


  var workingCell = sheet.getRange("B:B").getValue();

  if(workingCell < 120){
    sheet.getrange("E:E").add(1);

  }

}

Изображение реестра для лучшего понимания.

1 ответ

Если col2 меньше 120, увеличьте столбец 5 на 1

      function quota1() {
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName("Roster");
  const vs = sh.getRange(1,1,sh.getLastRow(),5).getValues();//get all data
  let vo = vs.map((r,i) =>{
    if(r[1] < 120) {
      return [r[4] + 1];//add one
    } else {
      return [r[4]];//no change
    }
  });
  //Logger.log(JSON.stringify(vo));//easier see the column
  sh.getRange(1,5,vo.length,vo[0].length).setValues(vo)
}

До:

Другие вопросы по тегам