Быстрое объединение нескольких листов Google в один лист

Я сделал несколько копаний, а короткий ответ - нет.

В основном оформление кадра отключено от ОС, поэтому у нас нет никакого доступа к его содержимому.

Однако, если вы хотите много работать, вы можете реализовать свое собственное оформление. Вы должны взять на себя ответственность за изменение размера и перемещение.

Возможно, вы захотите проверить

http://java-swing-tips.blogspot.com.au/ 2010/05 / custom-decoration-titlebar-jframe.html и http://www.paulbain.com/2009/10/13/howto-draggabe-jframe-without-decoration/ для идей

-1
задан Rubén 20 January 2019 в 04:13
поделиться

1 ответ

Вы можете записать все данные в один массив, а затем записать этот массив в «MergedMasterSheet». Посмотрите, работает ли это:

function TotalsSheet() {
var ss, merged, array;
ss = SpreadsheetApp.getActiveSpreadsheet();
merged = ss.getSheetByName("MergedMasterSheet")

//create sheet if it doesn't exist, else clear all content
merged = !merged ? ss.insertSheet("MergedMasterSheet") : merged.clear();

//create a 2D-array containing all data of all sheets, except the sheet for the merged data
ss.getSheets().forEach(function (sh, i) {
    if(sh.getName() !== "MergedMasterSheet") {
    array = (i == 0) ? sh.getDataRange().getValues() : array.concat(sh.getDataRange().getValues())
    }
})

//filter out rows with no value in first column
array = array.filter(function (r) {
    return r[0];
})

//write everything to the merged sheet in one call
merged.getRange(1, 1, array.length, array[0].length).setValues(array)
}

0
ответ дан JPV 20 January 2019 в 04:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: