Int*_*ked 13 editing google-sheets google-apps-script google-forms
最近,我一直在进行一项调查.我开始在Excel Forms Online中创建它,但在我意识到它的一些缺点之后切换到Google Forms.我遇到了一些障碍,但我以为我已经准备好了.
不幸的是,我开始在表单中添加问题并改变响应(拼写错误等等),这开始引发一大堆问题.如果适用的话,我必须回去询问用户对新问题的回答.更糟糕的是我无法修改提交内容.我无法编辑连接到表单的电子表格,因为结果存储在表单中.如果我重新生成电子表格,那么表单中提交的响应将替换之前的响应.所以我根本无法编辑电子表格.
我一直在寻找一种尝试手动编辑用户提交的响应的方法.我发现了一个资源在这里堆栈溢出,并在这里在产品论坛谷歌网上论坛,但不幸的是,我尝试了所有的例子,没有一次成功(是的,我把我的表单的网址中,一切都与被替换的名称电子表格名称).
填写完我的信息后,我继续接收的错误是TypeError: Cannot call method "getDataRange" of null. (line 8, file "Code")
.但是这张纸不是空的,我知道.
是否有其他方法可以使这项工作,或更好的方式来编辑工作表回复?
现在执行此操作的唯一方法是手动返回并再次以该用户重新提交表单.这是一种痛苦,因为它是10分钟的复选框和复制和粘贴.另外,昨晚我不小心跳过复制1个角色,现在我不得不重新做一遍.
从我在网上看到的情况来看,这可以做到,但我没有尝试过.该表格目前正在播放并立即接受回复.任何解决方案都是可以接受的,只要有一种方法可以使用脚本或其他工具编辑他们的响应,所以我不需要自己手动重新执行所有操作.
Bra*_*rks 16
这里建议的代码有效,因为我自己在2017年2月13日尝试过.
https://docs.google.com/ .../forms/d/1ZIrWiRZQrUsz1y8OBoeB7AtCOM4Ax4FxAQm8xAR1OYo/edit
使用以下内容替换显示在该Code.js
部分中的所有文本,在您编辑它之后,将表单ID替换为下面的YOUR_FORM_ID_HERE.
function dumpEditResponseUrlsForYourForm() {
// Change this next line to use the id of your form
var myFormId = "YOUR_FORM_ID_HERE";
var form = FormApp.openById(myFormId);
var formResponses = form.getResponses();
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
Logger.log(formResponse.getEditResponseUrl());
}
}
Run Code Online (Sandbox Code Playgroud) 归档时间: |
|
查看次数: |
37213 次 |
最近记录: |