Can someone point me in the right direction please?
I'm attempting to run two onEdit() which both send a range of cells to an archived sheet depending on whether a checkbox is ticked.
My code results in the entire row being moved and deleted rather than the specified cell range irregardless of which of the two checkboxes is selected as TRUE.
function onEdit(event) {
onEdit1();
onEdit2();
function onEdit1() {
// assumes source data in sheet named Active
// target sheet of move to named Found
// test column with yes/no is col 31
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();
if(s.getName() == "WORKSHOP" && r.getColumn() == 31 && r.getValue() == true) {
var row = r.getRow();
var numColumns = 11
var targetSheet = ss.getSheetByName("ARCHIVE-DEFECTS");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 23, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
}
function onEdit2() {
// assumes source data in sheet named Active
// target sheet of move to named Found
// test column with yes/no is col 10
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();
if(s.getName() == "WORKSHOP" && r.getColumn() == 10 && r.getValue() == true) {
var row = r.getRow();
var numColumns = 12
var targetSheet = ss.getSheetByName("ARCHIVE-INSP");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
}
}
Apologies I'm not very knowledgeable and am kind of learning by doing by readin threads in the forum. Cheers.