Используя существующий код, необходимо добавить динамическую формулу в функцию.
Скрипт предназначен для простого отслеживания времени, запуска / остановки отслеживания времени с помощью кнопок в листах Google.
function setValue(cellName, value {
SpreadsheetApp.getActiveSpreadsheet().getRange(cellName).setValue(value);
}
function getValue(cellName) {
return SpreadsheetApp.getActiveSpreadsheet().getRange(cellName).getValue();
}
function getNextRow() {
return SpreadsheetApp.getActiveSpreadsheet().getLastRow() + 1;
}
function addRecord(a, b, c, d) {
var row = getNextRow();
setValue('A' + row, a);
setValue('B' + row, b);
setValue('C' + row, c);
setValue('D' + row, d);
}
function punchIn() {
addRecord(getValue('A1'), new Date(), 'START', (""));
}
function punchOut() {
addRecord(getValue('A1'), new Date(), 'STOP', (""));
}
В значении D функции punchOut я хочу вычесть время STOP из предыдущего времени START. Теоретически, это должна быть просто ячейка D в текущем ряду минус ячейка D в предыдущем ряду по сравнению с усложнением и поиском времени START с того же дня в предыдущем ряду. Итак, просто D в текущем ряду минус D в предыдущем ряду?
Вот изображение вывода, хотя с ручной формулой в столбце D. снимок экрана