У меня есть несколько листов, в которых есть правила проверки данных для использования в качестве раскрывающихся списков.Мой код теперь создает ошибки при попытке вставить другие (не проверенные) данные в эти ячейки.
Я ищу способ игнорировать правило проверки данных и вставлять данные без внесения изменений в проверку данных.правила уже установлены.Я просто хочу игнорировать ошибку скрипта приложения.
Данные, введенные вами в ячейку U440, нарушают правила проверки данных, установленные в этой ячейке.
Строка, в которойОшибки кода не имеют проблем с проверкой данных, поэтому я не совсем уверен, как бороться с ошибкой.
function CountCol(ss, col){var vals = ss.getRange(col+'1:'+col).getValues();var last = vals.filter(String).length;return last+1;}
Эта функция возвращает номер строки первой пустой строки для объявленного столбца.Не уверен, как это нарушает правило проверки данных, как в моем коде. Я считаю столбец «C», а проверки данных выполняются в столбцах «O», «P», «Q», «U» и «V» и в столбце «Ошибка проверки».это «U».
var row_data = [[""], [""]]; //example data
var team = "12345645647abcdef"; //example spreadsheet id
var sn = "Sheet1"; //example sheet name
var caseload = SpreadsheetApp.openById(team).getSheetByName(sn);
var append = CountCol(caseload, "C");
Logger.log("adding to row: "+String(append));
try{
caseload.getRange(append, 1, 1, row_data[0].length).setValues(row_data); //this is where the error should be. The output manages to write most colums but stops before writing column 'U'.
}catch(e){
Browser.msgBox(e);
Logger.log("failed to append: "+String(append)+ ":" + String(row_data[0][0]) + ": " + String(row_data[0][1]));
}
caseload.getRange(append, 1, 1, row_data[0].length).setBackground("red");