我有一个Google工作表,它每周记录3次其他电子表格中的名称列表。
我正在尝试制作一个Google表单,以每周从日志单生成的数据中更新其问题3倍,并跳过为不包含任何数据的单元格创建问题的过程。在本周结束时(每次提交3次),我希望表格将回答的问题总数“是”,然后将包含该数字的电子邮件发送给几个人。我正在尝试格式化问题,如下所示。
“今天收集的(名称)样本吗?” -是 -否
在创建问题方面,我还没有尝试过任何东西,对编码来说是新手,我还找不到任何合适的示例文本。
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sourceSheet = ss.getSheetByName('Data Sheet');
var RDSheet = ss.getSheetByName('RawDataSheet');
var lastrowdata = RDSheet.getLastRow();
var RawData = sourceSheet.getRange(45,1,1,34);
RDSheet.getRange(lastrowdata + 1, 1).setValue(new Date()); // Insert
timestamp for raw data
RawData.copyTo(RDSheet.getRange(lastrowdata + 1, 2), {contentOnly: false});
我想创建一个表单,该表单会从Google工作表自动更新,并根据结果生成一封电子邮件。
答案 0 :(得分:0)
以下是基于Form Service References的代码段:
function myFunction() {
var form = FormApp.openById('Id of your form');
var spreadsheet=SpreadsheetApp.openById('Id of your Spreadsheet');
form.setDestination(FormApp.DestinationType.SPREADSHEET, spreadsheet.getId());
var source=spreadsheet.getSheetByName('Sheet1').getDataRange().getValues();
var item = form.addCheckboxItem();
item.setTitle(source[0][0]);
item.setChoices([item.createChoice((source[0][1])),item.createChoice((source[0][2]))]);
form.addMultipleChoiceItem()
.setTitle((source[1][0]))
.setChoiceValues([(source[1][1]), (source[1][2])])
.showOtherOption(true);
form.addDateItem()
.setTitle((source[2][0]));
Logger.log('Published URL: ' + form.getPublishedUrl());
Logger.log('Editor URL: ' + form.getEditUrl());
}
这是基于参考样本的代码片段,实现了YesCounter
变量。对于所有表单提交,它遍历iterest的问题,对于问题的回答为“是”的所有答案,则递增YesCounter
。
var YesCounter=0;
var formResponses = form.getResponses();
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
var itemResponses = formResponse.getItemResponses();
//assuming the question of interest is question number 1:
var itemResponse = itemResponses[0];
if(itemResponse.getResponse()=='yes'){
YesCounter++
}
}
Logger.log('The number of questions answered "yes" was: '+Yescounter);
您可以install和time-based trigger并将其链接到计算“是”并在您选择的时间间隔发送电子邮件的函数。
如果您不习惯使用Apps Script,还可以使用一些有用的加载项(由您自行决定),例如,以下是自动实现“动态字段更新”的加载项:
https://gsuite.google.com/marketplace/app/dynamic_fields/708020008404