Я пытаюсь удалить строки на основе частичных данных ячейки, содержащихся в ячейках столбца А. Например, ячейка может содержать значение «OX USPEA», номер детали цилиндра, я работаю в газовой промышленности и хочу удалить любую строку, содержащую это значение. Я работаю с почти 200 строками из примерно 500, которые содержат начальный текст "OX USPE", но заканчиваются различными текстовыми комбинациями. Это фрагмент кода, который я разработал до сих пор, но я не могу заставить его работать. Я получаю сообщение об ошибке «Исключение: эти строки выходят за границы. (Строка 218, файл« макросы »)», строка 218 - это место, где возникает ошибка, поскольку у меня есть много других строк кода в этом же документе, вот код, который я я фокусируюсь на:
function test() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Fast Fill'), true);
var snipLoop = spreadsheet.getRange("A:A").getValues();
for(var i = 0; i<snipLoop.length; i++){
if(snipLoop.indexOf("ox uspe")){
spreadsheet.deleteRow(i);
}
}
};
Опять же, когда я запускаю это, я получаю ошибку «Исключение: эти строки выходят за пределы. (строка 218, файл« макросы »)». Что я делаю неправильно?
Редактировать:
На основании ввода для пользователя ADW я обновил свой код до следующего:
function test() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Fast Fill'), true);
var snipLoop = spreadsheet.getRange("A:A").getValues();
for(var i = (snipLoop.length - 1); i >= 0; i--){
if(snipLoop.indexOf("OX USPE") > -1){
spreadsheet.deleteRow(i);
}
}
};
Мне необходимо дополнительно объяснить, что строки, которые я собираюсь удалить храните значения данных в столбцах от A до E, если это имеет значение.
Когда я запускаю этот код, я не получаю ошибок, и код выполняется полностью, однако с активированным листом ничего не происходит. Здесь я скопировал и вставил имя листа, Fast Fill, так что я уверен в его точности в коде. Кто-нибудь может объяснить это?
Редактировать: вот упрощенная электронная таблица, аналогичная той, с которой я работаю
Material Req
CD 50S 21
CD FG20A 49
CD USP50 25