Я пытаюсь сохранить отдельные листы, которые объединяются в один сводный лист в одной электронной таблице Google, сохраняя при этом форматирование. У меня есть код, который будет копировать содержимое отдельных листов в сводку, но второй лист заменяет первый в сводном листе. Вот что у меня есть -
function importTable2() {
// Source 1
var sourceSheet1 = SpreadsheetApp.openById("ID").getSheetByName("1");
var sourceRange1 = sourceSheet1.getDataRange();
// Source 2
var sourceSheet2 = SpreadsheetApp.openById("ID").getSheetByName("2");
var sourceRange2 = sourceSheet2.getDataRange();
// Destination
var destSS = SpreadsheetApp.openById("ID");
var destSheet = destSS.getSheetByName("Summary");
var destRange = destSheet.getDataRange();
destSheet.clear();
// Copy 1
var copiedsheet = sourceRange1.getSheet().copyTo(destSS);
copiedsheet.getRange(sourceRange1.getA1Notation()).copyTo(destRange);
copiedsheet.getRange(sourceRange1.getA1Notation()).copyTo(destRange, SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS, false);
destSS.deleteSheet(copiedsheet);
// Copy 2
var copiedsheet2 = sourceRange2.getSheet().copyTo(destSS);
copiedsheet2.getRange(sourceRange2.getA1Notation()).copyTo(destRange);
copiedsheet2.getRange(sourceRange2.getA1Notation()).copyTo(destRange, SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS, false);
destSS.deleteSheet(copiedsheet2);
}
Я думаю, это потому, что мой диапазон назначения такой же, но я не могу понять, как получить второй диапазон назначения (для данных листа 2), который будет находиться прямо под начальным целевым диапазоном (из данных листа 1), поскольку данные из листа 1 могут иметь 10 строк сегодня, но 20 строк завтра.
Любые мысли о том, как заставить источник 2 попасть на лист назначения под данные источника 1?