Нужно перенести данные с одного листа на другой предварительно отсортировать. Напитал следуюйщий скрипт:
function format() {
var sourseList = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Исходные данные");
var bdList = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("БД");
var lr1 = sourseList.getLastRow();
var lr2 = bdList.getLastRow();
for(var i = 4;i<=lr1;i++){
var colB = sourseList.getRange(i, 3).getValue();
var num = sourseList.getRange(i, 2).getValue();
var balance = sourseList.getRange(i, 6).getValue();
if(colB === "0шт."){
continue;
}
bdList.getRange(i, 1).setValue(num);
bdList.getRange(i, 2).setValue(balance);
}
}
Таблица:
![5f04b85f84ad4948674339.png](https://habrastorage.org/webt/5f/04/b8/5f04b85f84ad4948674339.png)
Цикл обходит три столбца в листе "Исходные данные", потом отбирает их по условию в столбе 3 и перезаписывает в лист "БД". Но данные в лист "БД" записываются с пропусками, и я не могу додумать как реализовать их корректное последовательное заполнение(еще один цикл) в лист "БД", данные заполняются с пустыми полями как их обходит цикл . Заранее спасибо.