【问题标题】:Script to append range of data in Google Sheets在 Google 表格中附加数据范围的脚本
【发布时间】:2015-10-18 04:04:53
【问题描述】:

我有一个脚本,可以将一系列数据复制并发送到另一张工作表。我想在脚本中添加另一部分,它将执行相同的功能,但将数据附加到新行。

  function saveToRecords() {
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var source = ss.getRange('Report!L1:AC1');
    source.copyTo(ss.getRange('Records!A3:R3'), {contentsOnly: true});
  }

我将此脚本附加到 Google 表格中的一个按钮上。数据从Report! 发送到Records!Records! 表将保存此数据。因此,每次单击按钮时,我都希望将数据发送到新行。

我知道有一种简单的方法可以做到这一点!我被难住了。谢谢你的帮助。

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    是的,有。你可以使用getLastRow()

    所以你的代码应该是这样的:

    function appendToRecords() {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var reportSheet = ss.getSheetByName("Report");
      var recordsSheet = ss.getSheetByName("Records")
      var reportData = reportSheet.getRange("L1:AC1")
                                  .getValues();
      var lastRow = recordsSheet.getLastRow();
      //copy data
      recordsSheet.getRange(lastRow + 1, 12, 1, 18)
                  .setValues(reportData);
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多