Google Apps Script функция onEdit(event)
Добрый день!
У меня есть два элемента onEdit Элемент кода: function onEdit(event) { SmartDataValidation(event); } function onEdit(event) { var sheetName = event.source.getActiveSheet().getSheetName(); var sheet = event.source.getActiveSheet(); var idCol = event.range.getColumn(); var idRow = event.range.getRow(); if (idCol === 13 && sheetName === 'Заказы'){ sheet.getRange(idRow, idCol +8).setValue(new Date().toString()); } } Как сделать так, чтобы работали оба элемента, а не перекрывали друг друга? Заранее спасибо! |
Решилось просто
function onEdit(event) { SmartDataValidation(event); var sheetName = event.source.getActiveSheet().getSheetName(); var sheet = event.source.getActiveSheet(); var idCol = event.range.getColumn(); var idRow = event.range.getRow(); if (idCol === 13 && sheetName === 'Заказы'){ sheet.getRange(idRow, idCol +8).setValue(new Date().toString()); } } |
Марина, обычно приходится делать что-то вроде наблюдателя, который будет обрабатывать все функции, которые подписаны на вызов onEdit()
Например, function f1(e){ // ... } function f2(e){ // ... } function onEdit(e){ f1(e); f2(e); } Т.е. в вашем варианте function onEdit(event) { SmartDataValidation(event); onEdit1(event); } function onEdit1(event) { var sheetName = event.source.getActiveSheet().getSheetName(); var sheet = event.source.getActiveSheet(); var idCol = event.range.getColumn(); var idRow = event.range.getRow(); if (idCol === 13 && sheetName === 'Заказы') { sheet.getRange(idRow, idCol + 8).setValue(new Date().toString()); } } |
Часовой пояс GMT +3, время: 19:10. |