Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 来自脚本但使用命名范围的数据验证_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript 来自脚本但使用命名范围的数据验证

Javascript 来自脚本但使用命名范围的数据验证,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我正试图找到一种方法,将命名的范围名称作为“范围”值来添加DataValidation。在RequireWebInRange中使用getRangeByName只提供了“A1:A50”,而我需要找到一种方法来放置“SampleRange”(即范围名称)。手动操作是可能的,但我有300行要一行一行地更新,我需要一种方法来自动化它 function ValidationNamedRange() { var NameSpace = "SampleRange"; var rule = Sp

我正试图找到一种方法,将命名的范围名称作为“范围”值来添加DataValidation。在RequireWebInRange中使用getRangeByName只提供了“A1:A50”,而我需要找到一种方法来放置“SampleRange”(即范围名称)。手动操作是可能的,但我有300行要一行一行地更新,我需要一种方法来自动化它

function ValidationNamedRange() {
    var NameSpace = "SampleRange";
    var rule = SpreadsheetApp.newDataValidation().requireValueInRange(NameSpace).build();
    range.setDataValidation(rule);
  }
}
谢谢你的帮助

GetRangeByName以A1表示法输出范围

这是错误的。除了正确的语法是getRangeByName(),此方法还返回一个范围对象

示例

以下内容将向指定的命名范围添加数据验证

  • 首先创建一个命名区域,并将其名称设置为
    NamedRange1
  • 执行以下脚本

    function myFunction() {
      var name = 'NamedRange1';
      var rng = SpreadsheetApp.getActiveSpreadsheet().getRangeByName(name);
      var rule = SpreadsheetApp.newDataValidation().requireNumberBetween(5, 10).build();
      rng.setDataValidation(rule);
    }
    

  • 非常感谢您的回答。我想我还不够清楚。我需要找到一种方法,在验证中添加一个命名的范围名称作为范围值。当我使用“GetRangeByName(SampleRange)”时,我会使用“A3:B400”进行数据验证,我需要一种方法来使用“SampleRange”。有没有一种方法可以创建这样工作的DataValidation规则?这会在一个范围上添加DataValidation,但实际上问题是,如何添加DataValidation,它会添加一个下拉列表,根据一个命名范围“验证”内容—生成一个范围非常简单,但据我所知,它总是会在datavalidator中转换为A1符号,我至今也无法做到这一点。在Google应用程序中,脚本语法大小写很重要,
    GetRangeByName
    requireRewaineRange
    会抛出语法错误。问题中的代码没有显示问题。添加