【问题标题】:Custom Formula Data Validation自定义公式数据验证
【发布时间】:2021-03-30 15:06:54
【问题描述】:
我们可以在一个范围内设置以下数据验证规则以防止重复条目吗?
=COUNTIF(B$6:B,B6)<2
数据验证中的上述自定义公式从第 6 行向下停止 B 列中的重复条目,因此第 15 列的规则为:
=COUNTIF(B$6:B,B15)<2
我们可以在 GAS 中以编程方式执行此操作吗?
【问题讨论】:
-
是的,我们可以。如果您需要进一步的帮助,请展示您尝试过的内容并按照How to Ask 中的建议添加您的搜索工作的简要说明。
标签:
validation
google-apps-script
google-sheets
formula
【解决方案1】:
解决办法:
Data Validation Builder 可以定义跨范围的数据验证规则:
示例代码:
function myFunction() {
var cell = SpreadsheetApp.getActive().getRange("B6:B");
var rule = SpreadsheetApp.newDataValidation().requireFormulaSatisfied("=COUNTIF(B$6:B,B6)<2").build();
cell.setDataValidation(rule);
}
样本表:
附:如果要拒绝重复值,可以在规则定义中添加.setAllowInvalid(false)。