Google sheets 脚本不会在FormSubmit上触发:根据列删除Google表单响应的Google工作表中的重复项
我正在尝试使用以下代码删除基于列的旧的重复表单响应 该代码的贷方为: 我的脚本中的代码是:Google sheets 脚本不会在FormSubmit上触发:根据列删除Google表单响应的Google工作表中的重复项,google-sheets,duplicates,google-forms,Google Sheets,Duplicates,Google Forms,我正在尝试使用以下代码删除基于列的旧的重复表单响应 该代码的贷方为: 我的脚本中的代码是: function removeDuplicates() { var ss = SpreadsheetApp.getActiveSpreadsheet(), responses = ss.getSheetByName('Name of Source Sheet'), range = responses.getDataRange(), numRows = range.getNu
function removeDuplicates() {
var ss = SpreadsheetApp.getActiveSpreadsheet(),
responses = ss.getSheetByName('Name of Source Sheet'),
range = responses.getDataRange(),
numRows = range.getNumRows()-1,
data = range.getValues(),
columnHeadings = [data[0]],
newData = [];
for (var i=numRows; i>0; i--) {
var row = data[i],
duplicate = false;
for (var j in newData) {
if (row[4] == newData[j][4]) {
duplicate = true;
// [4] is the column number from the 1st column. the above would be 1 + 4 = 5th column
}
}
if (!duplicate) {
newData.push(row);
}
}
var final = ss.getSheetByName('Name of Destination Sheet');
if (!final) {
var final = ss.insertSheet('Name of Destination Sheet');
}
final.clearContents();
final.getRange(1,1,1,columnHeadings[0].length).setFontWeight('bold').setValues(columnHeadings);
final.getRange(2, 1, newData.length, newData[0].length).setValues(newData);
}
这已设置为在表单提交时触发。它适用于新表单提交
但是,当使用“表单编辑URL”编辑现有响应时,这些值不会更新到新工作表中
但是,如果手动运行该函数,则更新的行将更新为新工作表
我如何解决这个问题?任何帮助都将不胜感激。谢谢。来自Web应用程序SE
我刚刚做了一个测试,发现表单提交事件不是
在编辑响应时触发
我不确定表单提交触发器是否按预期工作,如果
以上是由于一个错误或故障。当然,将问题发布到
这个
作为一种解决方法,使用
另一种运行脚本的方法,如时间驱动触发器
工具书类
此问题已交叉发布到->(目前没有任何答案)