使用Google Apps脚本自动将行复制到新工作表

时间:2016-09-07 13:01:01

标签: google-apps-script google-sheets

我有一个包含一些信息的电子表格,我希望它能自动复制到第二张表格。当我在复制的行中插入新行时,我还希望它自动复制。我找到了下面的代码,但我不完全理解我要做什么,因为它可以做我想要的,或者我需要添加任何东西。我有基本的编码知识,但并不多,所以如果有人能够解释这一点,我将非常感激。

function myFunction() {
var source = SpreadsheetApp.openById('xxxxxx');
var sourcesheet = source.getSheetByName('sheet1');
var target = SpreadsheetApp.openById('xxxxx')
var targetsheet = target.getSheetByName('sheet1');
var rangeValues = sourcesheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn()).getValues();
targetSheet.appendRow(rangeValues); 
}

2 个答案:

答案 0 :(得分:1)

您可以使用= IMPORTRANGE()函数更简单地完成此操作,例如=IMPORTRANGE("https://docs.google.com/spreadsheets/d/10X7KGGFd4U8IwQO4QgunmLMphtwwEF9bGwfu3Vrm3AM/","Sheet1!A:Z")

将此公式放在第二个电子表格中,将URL替换为第一个电子表格的URL(我只是举一个示例)并调整" sheet_name!range"满足你的需求。只要第一个电子表格的输入范围发生变化,第二个电子表格就会自动更新:)

希望这有帮助!

答案 1 :(得分:1)

如果您不完全了解用于这些代码的代码,则可以查看Google Apps脚本电子表格的documentation,了解不同类和方法的用途和用途。

现在,关于您需要从一个工作表复制到另一个工作表的行的问题,我认为tutorial可以帮助您解决这个问题。它在此解释了您需要在Apps脚本中执行的分步过程。

有关详细信息,请查看以下相关的SO问题: