use*_*310 4 javascript validation google-sheets google-apps-script
我使用应用程序脚本生成了多个复选框(全部未选中),所有复选框都具有相同的代码,但其中一些在单击时会弹出一个窗口,显示它们违反了数据验证规则(并且它们保持未选中状态)。我手动检查(在数据验证菜单中),它们都有相同的规则,如果我删除规则,则不会发生任何变化。
var enforceCheckbox = SpreadsheetApp.newDataValidation(); enforceCheckbox.requireCheckbox(); enforceCheckbox.setAllowInvalid(false); enforceCheckbox.build(); checkboxRange.setDataValidation(enforceCheckbox);
在我的脚本中,使用 onEdit 事件检查它们的所有值,但由于我什至无法编辑它们的值,我怀疑这是相关的。
事实证明,问题在于受影响的单元格格式为纯文本。将格式设置为自动解决了该问题。
感谢@Cooper,我发现了通过代码添加复选框的简单方法,遗憾的是,这似乎在应用程序脚本参考页面上没有得到很好的记录。
对于其他初学者,您可以使用以下方法添加一个复选框:
range.insertCheckboxes();
range.insertCheckboxes(checkedValue);
range.insertCheckboxes(checkedValue, uncheckedValue);
Run Code Online (Sandbox Code Playgroud)
您可以使用以下方法删除复选框:
range.removeCheckboxes();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3168 次 |
| 最近记录: |