Вчера я задал вопрос о скрипте, который я делал, так как я не смог обнаружить ячейку, которую я модифицировал, я оставляю ссылку на вопрос:
Застрял в скрипте электронной таблицы Google
Сейчас я пытаюсь сделать скрипт условным, но я не могу различить watchRange1 и watchRange2, это два разных диапазона ячеек, в которых есть определенная ячейка, в которую я хочу записать время, в которое каждыйдиапазон был изменен.
Прямо сейчас условное выражение всегда записывает мне время модификации в ячейке watchRange1, даже если я изменяю другой диапазон.
Можете ли вы сказать мне, что я делаю, wrog?
Это сценарий, который я упоминаю:
function onEdit(e){
var curDate = Utilities.formatDate(new Date(), "GMT+01:00", "hh:mm");
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Test2');
var range = e.range;
//var colIndex = range.getColumn();
var colIndex = range.getColumnIndex(); //Same as getColumn()
var rowIndex = range.getRowIndex(); //Same as getRow()
var DateCol1 = "K9"; //Cell you want to have the date
var DateCol2 = "U9"; //Cell you want to have the date
var watchRange1 = {
top : 11, // start row
bottom : 109, // end row
left : 3, // start col
right : 11, // end col
};
var watchRange2 = {
top : 11, // start row
bottom : 109, // end row
left : 13, // start col
right : 21, // end col
};
if(colIndex >= watchRange1.left || colIndex <= watchRange1.right &&
rowIndex >= watchRange1.top || rowIndex <= watchRange1.bottom &&
e.getValue() != 0){
SpreadsheetApp.getActiveSheet().getRange(DateCol1).setValue(curDate);
//Write the date in the cell
}else if (colIndex >= watchRange2.left || colIndex <= watchRange2.right &&
rowIndex >= watchRange2.top || rowIndex <= watchRange2.bottom &&
e.getValue() != 0){
SpreadsheetApp.getActiveSheet().getRange(DateCol2).setValue(curDate);
//Write the date in the cell
}else{
SpreadsheetApp.getActiveSheet().getRange(DateCol1).setValue("Error");
};
}