【发布时间】:2021-01-23 23:50:54
【问题描述】:
我对 Google 脚本的经验很少,但是我需要创建一个 Google 表格,该表格使用数据验证来限制通过“多选”下拉列表输入特定列的内容。 Google 表格具有内置的数据验证功能,允许从下拉列表中选择“单个”选项,但我需要我的 Google 表格以允许从受限选项列表中为单元格选择多个选项。
浏览 Internet 后,我找到了该作业的 Google 脚本(链接HERE 用于网站)但是,当我将此脚本应用到我的电子表格时,我收到以下错误消息。
TypeError:无法读取未定义的属性“值” onEdit@Code.gs:7
下面是我一直在使用的脚本。
function onEdit(e) {
var oldValue;
var newValue;
var ss=SpreadsheetApp.getActiveSpreadsheet();
var activeCell = ss.getActiveCell();
if(activeCell.getColumn() == 7 && ss.getActiveSheet().getName()=="Daniel") {
newValue=e.value;
oldValue=e.oldValue;
if(!e.value) {
activeCell.setValue("");
}
else {
if (!e.oldValue) {
activeCell.setValue(newValue);
}
else {
if(oldValue.indexOf(newValue) <0) {
activeCell.setValue(oldValue+'|'+newValue);
}
else {
activeCell.setValue(oldValue);
}
}
}
}
}
我很想听听有关脚本可能存在的问题的想法。
【问题讨论】:
-
如果没有触发器,您将无法运行这些函数,该触发器提供放置在通常选择为 e 的函数参数内的事件对象。
-
感谢@Cooper 的快速回复。我的印象是每次用户对电子表格进行编辑时都会触发 onEdit() 函数。我已经运行了这个脚本并为电子表格中的几个单元格选择了值。但是,它仍然不允许我选择多个选项。
-
动画是否如您所愿?
标签: validation google-apps-script google-sheets