复选框违反了数据验证规则

时间:2019-03-02 22:09:51

标签: javascript validation google-apps-script google-sheets

我已经使用apps脚本生成了多个复选框(均未选中),所有复选框都具有相同的代码,但是其中一些单击时会导致弹出窗口,提示它们违反了数据验证规则(并且未选中)。我手动进行了检查(在“数据验证”菜单中),它们都具有相同的规则,如果删除该规则,则没有任何更改。

var enforceCheckbox = SpreadsheetApp.newDataValidation(); enforceCheckbox.requireCheckbox(); enforceCheckbox.setAllowInvalid(false); enforceCheckbox.build(); checkboxRange.setDataValidation(enforceCheckbox);

在我的脚本中,使用onEdit事件检查了所有它们的值,但是由于我什至无法编辑它们的值,所以我怀疑这是否有意义。

1 个答案:

答案 0 :(得分:0)

原来的问题是受影响的单元格被格式化为纯文本格式。将格式设置为自动即可解决该问题。

感谢@Cooper,我发现了一种通过代码添加复选框的简单方法,可惜的是,在应用脚本参考页上似乎没有对此进行很好的记录。

对于其他初学者,您可以使用以下复选框添加一个复选框:

  range.insertCheckboxes();
  range.insertCheckboxes(checkedValue);
  range.insertCheckboxes(checkedValue, uncheckedValue);

您可以通过以下方式删除复选框:

  range.removeCheckboxes();