我今天早上创建了一个问题表单,因为我想为自己查看事件块。然而,这个过程对我来说意想不到。我的描述如下:
我正在使用以下代码记录onFormSubmit事件:
function testFormSubmission(e) {
var lock=LockService.getUserLock();
try{
if(lock.tryLock(30000)) {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('LogSheet');
var tA=[Utilities.formatDate(new Date(), Session.getScriptTimeZone(),"d/M/yyyy HH:mm:ss")];
tA=tA.concat(e.values);
tA.splice(tA.length-1,1,e.triggerUid,e.range.rowStart,e.range.columnEnd,JSON.stringify(e.values));
sh.appendRow(tA);
lock.releaseLock();
}
}
catch (e){throw("Couldn\'t get lock for 30 seconds");return;};
}
我的电子表格中有两张图片如下:
在e.values中实际上只有两列,一个是日期,一个是问题的答案,即“绿色”或“蓝色”。空白列来自于我从三个问题开始并收集电子邮件的事实,但为了简单起见我决定删除其中两个,因为我自己生成了提交。
无论如何,在C列中没有绿色或蓝色的响应就不应该存在。 J列很简单JSON.stringify(e.values),似乎暗示e的值不正确......我想?是/否
所以我的问题是日志表中不需要的附加行是从哪里来的?
我更新了我的标题问题,因为我认为我没有多次提交,否则我希望在表单响应1表中有多行。
对于您的信息,LogSheet中的列H是rowStart,因此很容易找出表单响应1中的哪一行相关联。
叮当猫咪
不负相思意