function onEdit(e) {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('AutoGR');
var actRng = sheet.getActiveRange();
var editColumn = actRng.getColumn();
var rowIndex = actRng.getRowIndex();
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf("Date") 1;
var orderCol = headers[0].indexOf("Batch") 1;
var new_date = new Date();
if (dateCol > 0 && rowIndex > 1 && editColumn == orderCol) {
sheet.getRange(rowIndex, dateCol).setValue(new_date).setNumberFormat("MM-dd-yyyy");
}
}
This code adds static time stamp upon update of column name with batch. Now I want to apply this to multiple tabs how can I apply this. I tried adding multiple sheet name in this code but it didn’t work
CodePudding user response:
Adding support for multiple sheets
function onEdit(e) {
const sh = e.range.getSheet();
const shts = ['AutoGR'];//add more sheet names
const idx = shts.indexOf(sh.getName());
if (~idx ) {
const sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('AutoGR');
var actRng = sh.getActiveRange();
var editColumn = actRng.getColumn();
var rowIndex = actRng.getRowIndex();
var headers = sh.getRange(1, 1, 1, sh.getLastColumn()).getValues();
var dateCol = headers[0].indexOf("Date") 1;
var orderCol = headers[0].indexOf("Batch") 1;
var new_date = new Date();
if (dateCol > 0 && rowIndex > 1 && editColumn == orderCol) {
sh.getRange(rowIndex, dateCol).setValue(new_date).setNumberFormat("MM-dd-yyyy");
}
}
}
Note I just added the support for multiple sheets but I'm not interested in debugging the rest of your code.
CodePudding user response:
Resolved but unable to post code.
