Google apps script 使用单元格值在Google应用程序脚本中设置NamedRange

Google apps script 使用单元格值在Google应用程序脚本中设置NamedRange,google-apps-script,google-sheets,Google Apps Script,Google Sheets,所以,我对这一点还不熟悉,但我有能力复制代码&将其改编为简单的东西。我想使用单元格的内容在命名区域中创建名称。 在A1中,我有我想要使用的名称,在A2:A22中,我有数据范围 有人分享了这一点,如果命名范围的名称在script-TestRange中是显式的,那么setNamedRange可以很好地工作,如代码所示: function testNamedRange() { var ss = SpreadsheetApp.openById('here is the spreadsheet id'

所以,我对这一点还不熟悉,但我有能力复制代码&将其改编为简单的东西。我想使用单元格的内容在命名区域中创建名称。 在A1中,我有我想要使用的名称,在A2:A22中,我有数据范围

有人分享了这一点,如果命名范围的名称在script-TestRange中是显式的,那么setNamedRange可以很好地工作,如代码所示:

function testNamedRange() {
  var ss = SpreadsheetApp.openById('here is the spreadsheet id');
  var range = ss.getRange('Sheet1!A2:A22');
  ss.setNamedRange('TestRange', range);
  var rangeCheck = ss.getRangeByName('TestRange');
  var rangeCheckName = rangeCheck.getA1Notation();
}
但是如果我用“Sheet1”替换名称“TestRange”!A1'它不会从表1中获取文本!A1并将其用作该范围的名称-错误消息“指定给该范围的名称无效”:


必须使用一个方法获取单元格,然后使用另一个方法获取其值

i、 e


有关更多详细信息,请检查

您的想法是正确的,但编程(与公式制作)需要明确。注意代码如何访问电子表格、工作表和范围类。与范围关联的两种方法允许访问其单元格/单元格的值。您可以在应用程序脚本文档(从“帮助”菜单)中找到这些脚本。
function testNamedRange() {
  var ss = SpreadsheetApp.openById('here is the spreadsheet id');
  var range = ss.getRange('Sheet1!A2:A22');
  ss.setNamedRange('**Sheet1!A1**', range);
  var rangeCheck = ss.getRangeByName('**Sheet1!A1**');
  var rangeCheckName = rangeCheck.getA1Notation();
}
var cell = ss.getRange('Sheet1!A1');
var cellValue = cell.getValue();