@Nik32

Как запустить триггер при редактировании определенной ячейки, определенного листа?

Здравствуйте, данный вопрос уже обсуждался на форуме. Но я так и не понял, как это работает. Мне нужно, чтобы триггер запускался при редактировании ячейки "M2" "Sheet1" и запускал вот это триггер:
function CopyList() {
  var sss = SpreadsheetApp.openById('ID-ТАБЛИЦЫ1'); 
  var ss = sss.getSheetByName('Sheet1'); 
  
  var from = ss;  
  var fromValues = from.getDataRange().getValues();  
  var fromData = fromValues

  var tss = SpreadsheetApp.openById('ID-ТАБЛИЦЫ2'); 
  var ts = tss.getSheetByName('Sheet2'); 
     
  ts.getRange(ts.getLastRow() + 1, 1, fromData.length, fromData[0].length)
    .setValues(fromData);
    }

Но не понимаю, как это сделать
  • Вопрос задан
  • 2120 просмотров
Решения вопроса 1
oshliaer
@oshliaer Куратор тега Google Apps Script
Google Products Expert
Вероятно, вот так должно сработать

/**
 * @param {GoogleAppsScript.Events.SheetsOnEdit} e
 */
function onEdit(e) {
  if (
    e.range.getSheet().getName() === 'Sheet1' &&
    e.range.getA1Notation() === 'M2'
  )
    CopyList();
}

/**
 *
 */
function CopyList() {
  var sss = SpreadsheetApp.openById('ID-ТАБЛИЦЫ1');
  var ss = sss.getSheetByName('Sheet1');

  var from = ss;
  var fromValues = from.getDataRange().getValues();
  var fromData = fromValues;

  var tss = SpreadsheetApp.openById('ID-ТАБЛИЦЫ2');
  var ts = tss.getSheetByName('Sheet2');

  ts.getRange(
    ts.getLastRow() + 1,
    1,
    fromData.length,
    fromData[0].length
  ).setValues(fromData);
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы