为google doc中的列设置数据验证,包括新行

时间:2013-11-06 21:59:03

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

我在google doc中有一个带有数据验证的列,在编辑现有行时可以使用下拉菜单。有时候,贡献者会在文档的底部创建新行,但这种验证会丢失。

我想在列中保留此验证,即使是在新创建的行中(标题行除外)。

我在stackoverflow和google帮助论坛中看到过很多讨论,但仍然无法找到明确的答案。

我的预感是,这将涉及使用onEdit触发器的Google App Acript,然后绘制格式或混淆类DataValidationBuilder的组合。 (https://developers.google.com/apps-script/reference/spreadsheet/data-validation-builder)但我不确定。

如果有人可以提供代码,或者我可以找到它的链接,我将不胜感激 - 谢谢。

4 个答案:

答案 0 :(得分:7)

虽然不一定优雅但我发现以下工作:

  • 在整个列上创建验证
  • 完成后,点击代表标题的单元格,选择数据/验证,然后点击“删除验证”。在那个单一的牢房里。

这样,任何新插入的行都会继承整个列上的验证设置,并且不必始终提醒您标题不是有效值。

答案 1 :(得分:1)

onEdit触发器,它使用Range.getDataValidation()和Range.setDataValidation()将规则从现有行复制到新行

答案 2 :(得分:0)

在数据验证对话框屏幕中,您可以手动将范围输入为“ Sheet1!A:A”,以将公式应用于所有A列。

这还包括后来添加的新行

答案 3 :(得分:0)

我不确定这是否是一项新功能,但确实可行。从间隔和间隔中将验证设置为列表:

'sheet'!C2:C

这包括除标题(第一行)之外的所有新行