我已经使用apps脚本生成了多个复选框(均未选中),所有复选框都具有相同的代码,但是其中一些单击时会导致弹出窗口,提示它们违反了数据验证规则(并且未选中)。我手动进行了检查(在“数据验证”菜单中),它们都具有相同的规则,如果删除该规则,则没有任何更改。
var enforceCheckbox = SpreadsheetApp.newDataValidation(); enforceCheckbox.requireCheckbox(); enforceCheckbox.setAllowInvalid(false); enforceCheckbox.build(); checkboxRange.setDataValidation(enforceCheckbox);
在我的脚本中,使用onEdit事件检查了所有它们的值,但是由于我什至无法编辑它们的值,所以我怀疑这是否有意义。
答案 0 :(得分:0)
原来的问题是受影响的单元格被格式化为纯文本格式。将格式设置为自动即可解决该问题。
感谢@Cooper,我发现了一种通过代码添加复选框的简单方法,可惜的是,在应用脚本参考页上似乎没有对此进行很好的记录。
对于其他初学者,您可以使用以下复选框添加一个复选框:
range.insertCheckboxes();
range.insertCheckboxes(checkedValue);
range.insertCheckboxes(checkedValue, uncheckedValue);
您可以通过以下方式删除复选框:
range.removeCheckboxes();