这在昨天有效,今天不再有效。
此脚本的功能是从填写Google表格的Google表单中获取信息,然后通过电子邮件将副本发送给用户以及公司电子邮件。 (在下面列为假电子邮件)
电子邮件包括已填充单元格的标题以及内容,并省略未填充的列。电子邮件主题包括:表格中的3个必填字段。
根据提交表单设置触发器。我也很好重写。这个脚本现在已经有几年了。
function email()
{
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Master");
// this used to sort sheet first - sheet.sort(1, true);
var Response = new Array(50);
var Header =new Array(50);
var j=0;
var row=sheet.getLastRow();
var userEmail=sheet.getRange(row,4,1,1).getValue();
var str="";
var str1="";
for(var i=1; i<=sheet.getLastColumn();i++)
{
if(sheet.getRange(row,i,1,1).getValue()!="")
{
Response[j]=sheet.getRange(row,i,1,1).getValue();
Header[j]=sheet.getRange(1,i,1,1).getValue();
Logger.log(Response[j]);
Logger.log(Header[j]);
str = str + Header[j] + ":\t" + Response[j]+ '\n';
if(Header[j]=="Full Name"||Header[j]=="Vehicle type"||Header[j]=="Serial Number")
str1 = str1 + Response[j]+ ':\t';
if(Header[j]=="Vehicle type")
str=str+'\n';
j++;
sheet.getRange(sheet.getLastRow(),4,1,1).setNote("emailed");
}
}
Logger.log(str);
GmailApp.sendEmail("email@fakeaddress.com" + "," + userEmail, str1, str);
}
答案 0 :(得分:0)
试试这个:
function email()
{
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Master");
var row=sheet.getLastRow();
var userEmail=sheet.getRange(row,4,1,1).getValue();
var str="";
var str1="";
for(var i=1; i<=sheet.getLastColumn();i++)
{
if(sheet.getRange(row,i,1,1).getValue()!="")
{
var r=sheet.getRange(row,i,1,1).getValue();
var h=sheet.getRange(1,i,1,1).getValue();
Response.push(r);
Header.push(h);
str+=h + ":\t" + r + '\n';
if(h=="Full Name"||h=="Vehicle type"||h=="Serial Number")
{
str1+= r + ':\t';
}
if(h=="Vehicle type")
{
str+='\n';
}
sheet.getRange(sheet.getLastRow(),4,1,1).setNote("emailed");
}
}
Logger.log(str);
GmailApp.sendEmail(userEmail, str1, str {cc:email@fakeemail.com});
}