У меня есть сводка на листе 2 («Члены»), которая подается из формы на листе 1 («Прием»). После того, как задача была обновлена и завершена, установлено значение «Да» на листе 1, а затем сохранено автоматически на листе 2, я хотел бы запустить сценарий для перемещения строки из «Члены» в «Архив», если установлено значение, обновленное в Приеме для завершения. на Да. На самом деле, чтобы заставить его работать, я помещаю кнопку со сценарием в «члены», и я должен быть помещен в ячейку со значением «Да», чтобы переместить строку в «Архив» ... Я хочу, чтобы это было автоматизировано.
Вы можете помочь мне?
Вот сценарий, который я использую:
// callFunctionB() cause i use onEdit(e) { callFunctionA(e);callFunctionB(e) }
function callFunctionB(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getActiveSheet();
var r = s.getActiveRange();
if(s.getName() == "Members" && r.getColumn() == 11 && r.getValue() == 'Yes') {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Archive");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
1 ответ
function callB(e) {
var s=e.range.getSheet();
if(s.getName()=="Members" && e.range.columnStart==11 && e.value=='Yes') {
e.source.getSheetByName("Archive").appendRow(s.getRange(e.range.rowStart,1,1,s.getLastColumn()).getValues()[0]);
s.deleteRow(e.range.rowStart);
}
}
function onEdit(e) { callFunctionA(e) callFunctionB(e) }
Но это тоже не работает.
Новые вопросы
google-apps-script
Используйте для вопросов о Google Apps Script, серверной платформе Google для облачных сценариев на основе Javascript для автоматизации задач в продуктах Google и сторонних службах. Используйте в дополнение к релевантным тегам продукта (например, [google-sheets], [google-docs]) или API (например, [google-drive-api]), где это применимо.