Я начну с того, что понятия не имею, что я делаю.Я выживаю после копирования и вставки кода из Интернета для электронной таблицы, которую я и мои друзья используем для совместного просмотра фильмов.
Я столкнулся с проблемой, когда обновляю ячейку с текущей датой, когдадругая ячейка в этой строке обновляется, если она пуста с помощью скрипта.Эта проблема заключается в том, что я затем использую функцию в ячейке рядом с ней, чтобы указать разницу в днях для другой даты, отмеченной в ячейке (как в обычной электронной таблице, поскольку это проще для меня).Но каждый раз, когда скрипт запускает функцию перерывов и заменяется текстом «#NUM!»(На самом деле этот текст есть, так как функция исчезает изнутри).
Я пытался изменить его на = U2 , и это тоже ломается.Это то, что не может быть сделано?Великий всемогущий бог Google не дал мне ответа, поэтому я сделал здесь учетную запись в надежде на спасение.
tl; доктор Скрипс выглядит так, как будто они нарушают мои ссылки на ячейки для любой функции листа, которая смотрит наклетки, которые они редактируют.Как остановить?
В ячейке V2 у меня есть функция = DATEDIF (S2, U2, "D") Сценарий ниже (я не знаю, как форматировать)
function onEdit(event) {
var eventRange = event.range;
var sheetName = SpreadsheetApp.getActiveSheet().getSheetName();
if (sheetName == "Scores") {
if (eventRange.getColumn() == 10) { //Check which is updated
var columnXRange = SpreadsheetApp.getActive().getSheetByName("Scores").getRange(eventRange.getRow(), 21, eventRange.getNumRows(), 21);//where to write
var values = columnXRange.getValues();
for (var i = 0; i < values.length; i++) {
if (!values[i][0]) { // If cell isn't empty
values[i][0] = new Date();
}
}
columnXRange.setValues(values);
}
}
}