在电子表格A上使用脚本我正在尝试更新新创建的电子表格B.最终目的是获得一张CRM工作表(电子表格A),我可以从中生成发票(电子表格B) .

在下面的脚本中,所有工作都直到行“sh_Invoice.getRange(5,12).setValue(”test“);” . 调试时,我可以看到对象活跃,但setValue()不起作用 . 我只是复制的电子表格的空白副本 . 自定义函数调用getCustomerData()和copyFileInFolder工作正常 .

有什么建议?

先谢谢你,汤姆

function createNewInvoice () {
  // gets handle on active sheet
  var sh = ss.getActiveSheet();
  // check if active sheet is CRM
  if (sh.getName() != "CRM") {
    showError(messageData.DialogTitle, messageData.Error0);
    return;
  }
  // build customer json table from active row in sheet
  var customer = getCustomerData(sh);
  // copy invoice template
  var f_Invoice = copyFileInFolder(configData.IdInvoiceTmpl);
  var ss_Invoice = SpreadsheetApp.openById(f_Invoice.getId());
  SpreadsheetApp.setActiveSpreadsheet(ss_Invoice);
  ss_Invoice.rename("Factuur 2015-" + configData.invoiceNumber + " (" + customer.name + ")");
  // fill in some data in the new sheet
  var sh_Invoice = ss_Invoice.setActiveSheet(ss_Invoice.getSheets()[0]);
  sh_Invoice.getRange(5,12).setValue("test");
  // set CRM spreadsheet back to active
  SpreadsheetApp.setActiveSpreadsheet(ss);

}