【发布时间】:2020-01-10 05:00:25
【问题描述】:
我正在尝试维护单独的工作表,这些工作表在一个谷歌电子表格中聚合成一个汇总表,同时保持格式。我有一个代码可以将单独工作表的内容复制到摘要中,但第二个工作表会覆盖摘要工作表中的第一个工作表。这就是我所拥有的-
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 数据下的目标工作表有什么想法吗?
【问题讨论】:
-
您可以将每个范围累积到一个数组 [][] 并将该数组提供给目标工作表
标签: google-apps-script google-sheets