Доброго времени суток!
Нужен скрипт, который бы выполнял следующую задачу:
Если в первой ячейке находятся данные (не важно какие), то во-вторую ячейку записать сегодняшнюю дату.
Собственно гугл-поиск выдал не мало результатов.
Я объединил несколько найденных кодов, так как в каждом из них чего-нибудь да не хватало, либо работало не так как нужно.
Этот код работает, но дату и время он записывает в разные ячейки, ну и плюс сам код разросся в полтора раза.
function onEdit(e){
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getActiveRange();
var row = range.getRow(); // Адрес строки активной ячейки
var col = range.getColumn();
var name = sheet.getName();
if (name == "Лист1" && col == 8){ // Если изменения на листе "Лист1" и в колонке H
if (sheet.getRange(row , 10).getValues()==''){ //Если дата в колонке 10 не заполнена
sheet.getRange(row, 10).setValues([[new Date()]]); //Заполняем текущую дату
}
}
if (name == "Лист1" && col == 8){ // Если изменения на листе "Лист1" и в колонке F
if (sheet.getRange(row , 11).getValues()==''){ //Если дата в колонке 11 не заполнена
sheet.getRange(row, 11).setValues([[new Date().toLocaleTimeString().replace(/([\d]+:[\d]{2})(:[\d]{2})(.*)/, "'$1")]]); //Заполняем текущее время
}
}
};
Как сделать так, чтобы эта часть кода выдавала одновременно и время и дату в одной ячейке?
Я знаю, что это возможно, но самому не удается прийти к решению проблемы.
sheet.getRange(row, 11).setValues([[new Date().toLocaleTimeString().replace(/([\d]+:[\d]{2})(:[\d]{2})(.*)/, "'$1")]]);
В программировании не силен, поэтому если не затруднит объясните как для полного чайника.