问题 如何在Google表格/表格中修改表单提交的响应?


最近,我一直在进行一项调查。我开始在Excel Forms Online中创建它,但在我意识到它的一些缺点后切换到Google Forms。我遇到了几个障碍,但我以为我已经准备好了。

不幸的是,我开始在表单中添加问题并改变响应(拼写错误等等),这开始引发一大堆问题。如果适用的话,我必须回去询问用户对新问题的回答。更糟糕的是我无法修改提交内容。我无法编辑连接到表单的电子表格,因为结果存储在表单中。如果我重新生成电子表格,那么表单中提交的响应将替换之前的响应。所以我根本无法编辑电子表格。

我一直在寻找一种尝试手动编辑用户提交的响应的方法。我找到了一个资源 这里是Stack Overflow,和 这里是产品论坛上的Google网上论坛,但不幸的是,我尝试了所有的例子,但没有一个工作(是的,我把我的表格的URL放在一切,并用电子表格名称替换了名称)。

填写完我的信息后,我继续接收的错误是 TypeError: Cannot call method "getDataRange" of null. (line 8, file "Code")。但是这张纸不是空的,我知道。

是否有其他方法可以使这项工作,或更好的方式来编辑工作表回复?

现在这样做的唯一方法是 手动 返回并重新提交表单 作为那个用户。这是一种痛苦,因为它是10分钟的复选框和复制和粘贴。另外,昨晚我不小心跳过复制1个角色,现在我不得不重新做一遍。

从我在网上看到的情况来看,这可以做到,但我尝试过的都没有。该表格目前正在接受并立即接受回复。任何解决方案都是可以接受的,只要有一种方法可以使用脚本或其他工具编辑他们的响应,所以我不需要自己手动重新执行所有操作。


8677
2018-06-11 21:52


起源

我觉得 UrlFetchApp.fetch(url) 需要使用HTTPS GET或POST请求来编辑表单中的数据。哪里 url 是编辑的网址。我删除了以前的评论。 - Sandy Good
我找不到任何“内置”方式来编辑现有的代码响应。当编辑发送到表单时,我一直在试图弄清楚url和有效负载,但是没有任何确定的东西。 - Sandy Good
@SandyGood:有一个代码的答案可以做到这一点,但它不再起作用了。看到 stackoverflow.com/questions/20410497/... - Rubén
错误并不是说您的工作表没有数据,它说的是您尝试使用的对象 getDataRange() on为null。正如@Rubén建议的那样:我们需要看到更多代码来了解原因。 - Mogsdad
相关(如果表单连接到电子表格): webapps.stackexchange.com/questions/89551/... - Sphinxxx


答案:


代码在这里建议 工作,因为我自己在2017年2月13日尝试过。

以下是我使用此步骤的步骤

  • 首先,加载表单,就像您要编辑表单一样。
  • 在地址栏的网址中查找表单的“表单ID”。它应该看起来像这样:

https://docs.google.com/...   /形式/ d /1ZIrWiRZQrUsz1y8OBoeB7AtCOM4Ax4FxAQm8xAR1OYo/编辑

  • 所以这个例子中的id就是“1ZIrWiRZQrUsz1y8OBoeB7AtCOM4Ax4FxAQm8xAR1OYo”
  • 现在去 https://script.google.com
  • 替换显示在中的所有文本 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());
       }
    }
    
  • 点击Google Script网页中的“查看|日志”。它会弹出一个窗口,其中包含指向表单响应的链接。

15
2018-02-13 19:20



如果需要,可以在此处找到改进版本: webapps.stackexchange.com/a/89566/151861 - dvb
这太棒了!谢谢! - aaiezza