我有一张表格,我的员工用它来发送数据。
其中一个部分是"长答案文字"任何评论的方框。
通常没有评论,所以留空。
我的问题是 -
有没有办法自动预填谷歌形式的文字以及如何填写?
我使用了预填充链接但是如果用户决定提交另一个表单(他们总是这样做),则会将它们带回原始表单链接而不是预填充链接。
此数据会发送到电子表格,其中包含带有最新数据的自定义信息中心。
如果注释列中有空白,它将获取列部分中的最后一个非空白单元格,并为该数据发出错误的注释。
我还没有找到一种方法来填充所有空白单元格"没有评论"在谷歌工作表中没有填写所有尚未用于谷歌表格提交的单元格。想象一下,从谷歌表格而不是谷歌表单开始使用任何脚本魔法可能更容易。
提前谢谢
答案 0 :(得分:0)
是的,这是可能的,您可以使用单独的电子表格作为预填表格的输入,而不必更改。
对于与您here有很多共性的问题,已经有答案。
首先尝试一下。如果您尝试编写脚本并且无法更进一步,则可以在此处提交您尝试过的代码,我们可以为您提供进一步的帮助。在SO询问问题之前,请先自己尝试一下。
答案 1 :(得分:0)
一些想法。
首先,你写道:
我使用了预填充链接但是如果用户决定提交 另一种形式(他们总是这样),它会把他们带回去 原始表单链接,而不是预填充链接。
要处理此问题,请在演示文稿选项卡中的表单设置中删除此选项。然后,您的用户将只能使用您提供的预填充链接。
其次,为了处理用户删除预填充文本的情况(或者他们发现未预填充的表单链接并使用该文本链接),您可以编写一个脚本,在表单提交时触发以检查此值并替换“没有评论”的任何空白。
该脚本应附加到收集表单响应的电子表格中。
以下是一些可能对您有用的粗略代码......
function onFormSubmit_noComments(e) {
var col = 5 //replace this with your column number for the comments field (1st column is 1)
var row = e.range.getRow(); //The row in the spreadsheet that was just inserted
var commentsCell = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(row, col);
var answers = e.range.getValues();
if (!answers[0][col - 1]) {//this will fire if the field was left blank
commentsCell.setValue("No Comment");
}
}