Javascript 来自脚本但使用命名范围的数据验证
我正试图找到一种方法,将命名的范围名称作为“范围”值来添加DataValidation。在RequireWebInRange中使用getRangeByName只提供了“A1:A50”,而我需要找到一种方法来放置“SampleRange”(即范围名称)。手动操作是可能的,但我有300行要一行一行地更新,我需要一种方法来自动化它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
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
会抛出语法错误。问题中的代码没有显示问题。添加