将数据范围从一个电子表格复制到另一个电子表格会从目标中删除数据

Copying range of data from one spreadsheet to another deletes data from destination

最终目标是每 10-15 分钟成功地将 运行ge 个单元格从一个电子表格复制到另一个电子表格。这些单元格通过驱动器 API 由外部脚本填充。

问题是当脚本是 运行 时,它只是删除目标 运行ge 中的所有数据,这对我来说毫无意义!!

function ExportHourlyCitizenData() {
  var ssSource = SpreadsheetApp.openById("1kDupxE8csxYibYz-cfzkhzehwzTQGjFXOlCU3bJNUIg");
  var sheet = ssSource.getSheetByName("Hourly Citizen Capture");
  var ssDest = SpreadsheetApp.openById("1tMAP0fg-AKScI3S3VjrDW3OaLO4zgBA1RSYoQOQoNSI");
  var sheetDest = ssDest.getSheetByName("Hourly Citizen Capture");
  // Grabs the source range, some of the grabbed cells are empty..
  var rangeSource = ssSource.getRange("B70:Z168");
  var dataSource = rangeSource.getValues();
  // sets the destination cells.
  sheetDest.getRange("B85:Z183").setValues(dataSource);
}; 

所以这个想法很简单,但不知何故我把这里的东西搞砸了。我正在移动一组大小适中的数据,所以也许还有更有效的方法?

编辑:我尝试使用 import运行ge,但问题是当我通过驱动器 api 将数据推送到电子表格时它没有更新,这是一个严重的问题。

这可能是问题所在:

var rangeSource = ssSource.getRange("B70:Z168");

使用源数据 sheet 变量 sheet 而不是传播 sheet 变量 ssSource