标签: google-forms

使用应用脚本将Google电子表格数据导入Google表单

我搜索了互联网,我找不到对此的回复,也没有找到它的文档.我需要使用应用程序脚本使用Google电子表格中的数据动态生成Google表单问题,但我不知道如何引用和阅读电子表格.

javascript google-sheets google-apps-script google-forms google-sheets-api

9
推荐指数
2
解决办法
4万
查看次数

使用Google Apps脚本在Google表单中预填充当前日期

我有一个电子表格的Google表单,我需要一个预先填写当前日期的日期字段.

像an的东西"onOpen trigger",用now()更新日期字段或日期字段.

这可以在Google Apps脚本中使用吗?

forms google-apps-script google-forms

9
推荐指数
1
解决办法
1778
查看次数

如何在Google表格中自动捕获受访者的电子邮件ID?

我正在向参与者发送一份调查表给他们的电子邮件ID.我能够捕获并查看对每个问题的回答.但是,我无法看到相应的Respondent的电子邮件ID.

有没有办法在响应表中自动自动捕获被访者的电子邮件地址?

google-forms

9
推荐指数
1
解决办法
1766
查看次数

从 Google 表单中检索响应的链接

我有一个附加到 Google 表单的脚本,该脚本在提交时向 Discord 频道发送通知。我想包含一个指向个人回复的直接链接(链接看起来像https://docs.google.com/forms/d/<myformid>/edit#response=<responseid>)。我怎样才能找回那个链接?我得到的链接最多的一部分,/editForm.getEditUrl()但我不能得到正确的ID。我检查过,FormResponse.getId()但这并没有将我与任何回复联系起来。

以下是通过编辑表单手动访问该链接的方法: 在此处输入图片说明

javascript google-apps-script google-forms

9
推荐指数
1
解决办法
1264
查看次数

当使用选项包含电子邮件中的表单时,谷歌会以谷歌的方式在电子邮件中嵌入谷歌表格

我必须向某些人发送表单,然后使用Google脚本执行此操作.我尝试使用以下代码将表单嵌入到电子邮件中: https://stackoverflow.com/a/23671529/4305236:

var form = FormApp.create('New Form');
....
var url = form.getPublishedUrl();
var response = UrlFetchApp.fetch(url);
var htmlBody = HtmlService.createHtmlOutput(response).getContent();
    MailApp.sendEmail({
    to: email,
    subject: subject,
    htmlBody: htmlBody,
  });
...
Run Code Online (Sandbox Code Playgroud)

但是,当表单直接从谷歌表单界面发送时,它不像谷歌那样发送表单.

脚本发送的电子邮件;

目标(直接通过谷歌表格发送的电子邮件):

这个问题已经在这里提出,但没有回应.

最后,目标是每天更改表单,因此无法在先前发送的电子邮件中使用模板.

提前感谢您的任何帮助.

google-apps-script google-forms

9
推荐指数
1
解决办法
327
查看次数

设置脚本以在电子邮件通知中包含Google文档表单数据

我使用googledocs设置了一个表单.我只想将输入表格的实际数据通过电子邮件发送给我,而不是通用回复表明表格已经完成.

我没有代码等方面的技能或经验,但我确信我可以对此进行排序.我花了几个小时+几个小时没有运气.

我的表格非常基本.它有5个字段.其中4个只是文本响应,还有一个多项选择.

我在网上找到了这个tute(http://www.labnol.org/internet/google-docs-email-form/20884/),我认为这总结了我正在尝试做的事情,但却未能得到它上班.

从这个网站我输入以下代码:

function sendFormByEmail(e) 
{    
  var email = "reports.mckeir@gmail.com"; 

  var subject = "Google Docs Form Submitted";  

  var s = SpreadsheetApp.getActiveSheet();
  var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];    
  var message = "";    

 for(var i in headers)
message += headers[i] + ' = '+ e.namedValues[headers[i]].toString() + "\n\n"; 

  MailApp.sendEmail(email, subject, message); 
}
Run Code Online (Sandbox Code Playgroud)

对此,我得到以下回复: - >

您的脚本,联系我们Form Mailer,最近未能成功完成.故障摘要如下所示.要配置此脚本的触发器,或更改接收未来故障通知的设置,请单击此处.

该脚本由文档100%Club使用.

细节:

Start               Function        Error Message                                                       Trigger     End
12/3/12 11:06 PM    sendFormByEmail TypeError: Cannot call method "toString" of undefined. (line 12)    formSubmit  12/3/12 11:06 PM
Run Code Online (Sandbox Code Playgroud)

有人能帮我解决这个问题吗?我猜我不会包含一些必要的数据,但老实说我没有任何线索.

email google-docs google-apps-script google-forms

8
推荐指数
1
解决办法
2万
查看次数

发送文件附件以及Google文档表单提交,是否已通过电子邮件发送?

我正在使用GDocs构建一个表单,然后将表单放到我的网页中,这样我就可以直接编辑表单(所以我可以完全控制表单代码).

现在我可以将结果提交给Google Docs,然后将结果通过电子邮件发送给我.

我想使用以下方法为这些提交添加文件附件:

<input type="file" name="datafile" id="filedata" size="40">
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用mailApp.sendEmail的高级参数,特别是附件参数或inlineImages参数.

但是如何访问文件值以便将它们附加到发送?

google-docs-api google-apps-script google-forms

8
推荐指数
0
解决办法
1万
查看次数

使用Apps脚本动态编辑实时Google表单中的多个选项

我是洛杉矶的一名高中老师,试图使用Apps Script创建一个课程注册系统.我需要我用于此注册的Google表单:

问题1)根据学生当前的答案选择,在新页面上更新后续多项选择题中可用的选项.

问题2)当多项选项达到"上限"时,从表格中消除选择.

问题1示例)学生在研讨会1中注册"绑定",并进入新页面.脚本根据学生的第一选择编辑该新页面上的可用选项,并从该新页面上的可能选项列表中删除"绑定",因此"礼仪"是他们唯一剩下的选项.

问题2示例)学生可以注册"绑定"或"礼仪",这两个回复最初都在Google表格中提供.30名学生参加了调查,所有30名学生都参加了"打结"研讨会.应用程序脚本引用响应电子表格,意识到"绑定"工作坊已满,然后将其从Google表单的可能选项列表中删除.学生31去登记,他们唯一的选择是"礼仪".

如果我的问题已被问及并回答(相信我,我确实搜索了!)我很欣赏重定向.

google-apps-script google-forms

8
推荐指数
1
解决办法
3万
查看次数

在谷歌表单中提交时访问用户输入的数据

我有一个google表单,其中包含以下两个字段:

  • 电子邮件地址: - 文本框
  • 工具: - 一个单选按钮
    • 工具1
    • 工具2
    • 工具3

用户将输入他的电子邮件地址并选择工具并单击"提交".我希望看到以下消息:

谢谢你的回复.已发送电子邮件至您输入的电子邮件地址以下载所选工具.

我在脚本编辑器中有以下代码

    function emailFormSubmission() {
        var form = FormApp.getActiveForm();//the current form
        var dest_id = form.getDestinationId(); //the destination spreadsheet where form responses are stored
        var ss = SpreadsheetApp.openById(dest_id);//open that spreadsheet
        var theFormSheet = ss.getSheets()[0]; //read the first sheet in that spreadsheet
        var row = theFormSheet.getLastRow(); //get the last row
        var emailid = theFormSheet.getRange(row,2,1,1).getValue();//get column 2 corresponding to the email id. column 1 is timestamp. so, skip …
Run Code Online (Sandbox Code Playgroud)

google-apps google-apps-script google-forms

8
推荐指数
1
解决办法
7101
查看次数

Google应用脚本触发器无效

我有一个发送电子邮件的谷歌应用程序脚本,我设置了一个触发器,以便它在每个表单提交时发送电子邮件.问题是触发器在最初的几分钟内完全正常,但后来甚至在输入正确的数据之后.脚本不发送邮件,我必须手动按下脚本的执行按钮.这是我的代码

var EMAIL_SENT = "EMAIL_SENT";
function sendEmailsapp() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = sheet.getLastRow();   // Number of rows to process
  // Fetch the range of cells A2:B3

  var dataRange = sheet.getRange(startRow, 1, numRows,8)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (var i = 0; i < data.length; ++i) {
    var row = data[i];
    var emailAddress = row[4];  // First column …
Run Code Online (Sandbox Code Playgroud)

triggers eventtrigger google-sheets google-apps-script google-forms

8
推荐指数
3
解决办法
2万
查看次数