Javascript 使用由谷歌表单填充的谷歌表单为每个新回复发送电子邮件
看到了一些类似的选择,但没有什么很有帮助 我管理一个由几个团队组成的团队,他们在其中填写一份表格。它们填充了一个电子邮件列表,我希望有一个电子邮件列表(第2页)接收一封包含每个响应的所有响应的电子邮件 这封邮件看起来像是每个问题的粗体版本,下面是回复。电子邮件中的信息应与F栏中的回复相关。理想情况下,您的电子邮件标题为“ABC表-日期-提交人”或“F栏-E栏-C栏” 目前,我为每个团队准备了一份表格,目标是团队主管在团队提交回复时收到一封电子邮件(见D列)。如果不能做到这一点,我可以只做几个形式是独特的每个团队 *编辑:将为每个表单部分添加更多列,以获取更多问题 我在Google Sheets脚本编辑器的网上找到了这个,但我不知道javascript,但我相信我可以根据自己的需要调整它Javascript 使用由谷歌表单填充的谷歌表单为每个新回复发送电子邮件,javascript,google-sheets,google-forms,Javascript,Google Sheets,Google Forms,看到了一些类似的选择,但没有什么很有帮助 我管理一个由几个团队组成的团队,他们在其中填写一份表格。它们填充了一个电子邮件列表,我希望有一个电子邮件列表(第2页)接收一封包含每个响应的所有响应的电子邮件 这封邮件看起来像是每个问题的粗体版本,下面是回复。电子邮件中的信息应与F栏中的回复相关。理想情况下,您的电子邮件标题为“ABC表-日期-提交人”或“F栏-E栏-C栏” 目前,我为每个团队准备了一份表格,目标是团队主管在团队提交回复时收到一封电子邮件(见D列)。如果不能做到这一点,我可以只做几个形式
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // Start at second row because the first row contains the data labels
var numRows = 3; // Put in here the number of rows you want to process
// Fetch the range of cells A2:B4
// Column A = Email Address, Column B = First Name
var dataRange = sheet.getRange(startRow, 1, numRows, 2)
// Fetch values for each row in the Range.
var data = dataRange.getValues();
for (i in data) {
var row = data[i];
var emailAddress = row[0]; // First column of selected data
var message = "Hey " + row[1] + ",\n how are you doing today?"; // Assemble the body text
var subject = "Sending emails from a Spreadsheet";
MailApp.sendEmail(emailAddress, subject, message);
}
}
我的解决方案是从包含表单响应的工作表中创建一个HTML表,按团队对它们进行分组,并将它们发送给相应的主管 注册新响应时,此操作不会运行,只能手动运行。触发器不可能发送电子邮件。看
函数main(){
var sprsheet=SpreadsheetApp.getActiveSpreadsheet();
var supervisors=sprsheet.getSheetByName(“Sheet2”).getDataRange().getValues();//从工作表2中获取所有数据
var data=sprsheet.getSheetByName(“表单响应4”).getDataRange().getValues();//表单响应4也一样
对于(变量i=1;i<1.length;i++){
var计数器=0;
var表;
var header=“TimestampSubmiter EmailSubmitter TeamDate这是哪种形式?你走了吗?你说了吗?你爱我吗?你想挤我吗?”;
对于(var j=1;j0){
var subject=“从电子表格发送电子邮件”;
var message=“嘿”+主管[i][0]+”,\n你今天过得怎么样?
”;
表+=”;
MailApp.sendmail({
致:监事[i][1],
主题:主题,,
htmlBody:message+table});
}
}
}
函数createTable(数据,表){
var单元格=[];
//该表是一个二维数组
对于(变量i=1;i
参考资料
函数main(){
var sprsheet=SpreadsheetApp.getActiveSpreadsheet();
var supervisors=sprsheet.getSheetByName(“Sheet2”).getDataRange().getValues();//从工作表2中获取所有数据
var data=sprsheet.getSheetByName(“表单响应4”).getDataRange().getValues();//表单响应4也一样
对于(变量i=1;i<1.length;i++){
var计数器=0;
var表;
var header=“TimestampSubmiter EmailSubmitter TeamDate这是哪种形式?你走了吗?你说了吗?你爱我吗?你想挤我吗?”;
对于(var j=1;j0){
var subject=“从电子表格发送电子邮件”;
var message=“嘿”+主管[i][0]+”,\n你今天过得怎么样?
”;
表+=”;
MailApp.sendmail({
致:监事[i][1],
主题:主题,,
htmlBody:message+table});
}
}
}
函数createTable(数据,表){
var单元格=[];
//该表是一个二维数组
对于(变量i=1;i
参考资料
function main(){
var sprsheet = SpreadsheetApp.getActiveSpreadsheet();
var supervisors = sprsheet.getSheetByName("Sheet2").getDataRange().getValues(); //Gets all the data from Sheet 2
var data = sprsheet.getSheetByName("Form Responses 4").getDataRange().getValues(); //Same for Form Responses 4
for (var i = 1; i < supervisors.length; i++){
var counter = 0;
var table;
var header = "<table border=1><th>TimeStamp</th><th>Submitter email</th><th>Submitter</th><th>Team</th><th>Date</th><th>Which form is this?</th><th>Did you walk the walk?</th><th>Did you talk the talk?</th><th>Did you love me?</th><th>Do you want to squeez me?</th>";
for (var j = 1; j < data.length; j++){
if (supervisors[i][2] == data[j][3]){ //Teams are located at cols C and D respectively
table = createTable(data, header);
counter++;
}
}
if (counter > 0){
var subject = "Sendimg emails from a Spreadsheet";
var message = "<html><body>Hey " + supervisors[i][0] + ",\n how are you doing today? <br>";
table += "</table></body></html>";
MailApp.sendEmail({
to: supervisors[i][1],
subject: subject,
htmlBody: message + table});
}
}
}
function createTable(data, table){
var cells = [];
//The table is a 2D array
for (var i = 1; i < data.length; i++){
cells = data[i]; //puts each cell in an array position
table += "<tr>"; //Row starts
for (var u = 0; u < cells.length; u++){
table += "<td>"+ cells[u] +"</td>"; //New column
}
table += "</tr>"; //Row ends
}
return table
}