将工作表数据复制到Doc表

时间:2016-08-04 15:49:50

标签: google-apps-script

我有一张包含需要填写的信息的工作表,一旦启动提交过程,它应该将单元格数据复制到文档中的现有表头。文档中只有一个表格带有标题信息。

我可以使用appendTable使其正常工作,但我想将行追加到文档中的现有表中。电子表格中的数据看起来像  [[1234,Jordan,Connecticut],[6899123,Job Site,Connecticut],[,,]]

//  Sheet Data
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0]
var range = sheet.getRange(2,1,sheet.getLastRow(),sheet.getLastColumn());
var rows = sheet.getLastRow()
var values = range.getValues();


var document = DocumentApp.openById(tmpl);
var body = document.getBody();
   body.replaceText('#{jobNum}', job);
var table = body.getTables()[0]

document.saveAndClose()

1 个答案:

答案 0 :(得分:0)

您已经拥有变量values中的值,并且您还在变量table中选择了文档中的第一个表,现在您只需要循环遍历数组并使用{追加行{3}}和appendTableRow()

你的循环应如下所示:

  for (var row = 0; row < values.length; row++) {
    var newRow = table.appendTableRow(); // Append new Row
    for (var col = 0; col < values[row].length; col++) {
      newRow.appendTableCell(values[row][col]); // Append a Cell with the value
    }
  }

这会在文档中已有的表的末尾添加一行。