4

我已经尝试了尽可能多的组合。

我的目标是让 Google Apps 脚本独立运行或从库中运行,并能够在电子表格中设置命名范围。

尽我所能,该setNamedRange()方法仅在电子表格容器中可用,并且仅在您使用SpreadsheetApp.getActiveSpreadsheet().

我尝试使用openById()无济于事。该方法不可用。

以为我很聪明,然后尝试了 openById 然后 setActiveSpreadsheet。我不够聪明。


更新,我使用 google-apps-script-issues http://code.google.com/p/google-apps-script-issues/issues/detail打开了问题 1816“对象变为全局,即使删除后自动完成仍然存在” ?编号=1816

相当有趣的行为。误导我问错问题

看起来是 GAS 编辑器中的错误。

4

1 回答 1

8

以下函数演示了如何在独立脚本中设置命名范围。

function testNamedRange() {
  var ss = SpreadsheetApp.openById('here is the spreadsheet id');
  var range = ss.getRange('Sheet1!A1:B2');
  ss.setNamedRange('TestRange', range);
  var rangeCheck = ss.getRangeByName('TestRange');
  var rangeCheckName = rangeCheck.getA1Notation();
}

rangeCheckName变量包含A1:B2字符串。

于 2012-09-07T20:42:23.613 回答