Email 发送由谷歌表单填充的电子邮件
我们的工程部门在谷歌上有一个申请表,我们公司用它来通知我们需要参加的项目和其他问题。在我们的周会上,这些请求被指派了一名项目负责人。我正在尝试编写一个脚本,该脚本将使用电子表格中的数据填充电子邮件。该表单将通知请求者和项目负责人,以便他们可以直接相互联系,而不是通过电子邮件向工程组中的每个人发送更新信息。我尝试拼接两个不同的代码来实现这一点,因为我无法找到可以轻松适应我们目标的代码。我在下面列出了我用来写我所拥有的代码的链接 代码告诉我无效的电子邮件:并突出显示MailApp.sendEmail,即使是真实的电子邮件地址。有人能帮忙吗?自从高中网页设计以来,我就没有写过任何代码。我们正在考虑在其他几个部门也使用这种形式的通知。假设我能用这个版本Email 发送由谷歌表单填充的电子邮件,email,google-apps-script,Email,Google Apps Script,我们的工程部门在谷歌上有一个申请表,我们公司用它来通知我们需要参加的项目和其他问题。在我们的周会上,这些请求被指派了一名项目负责人。我正在尝试编写一个脚本,该脚本将使用电子表格中的数据填充电子邮件。该表单将通知请求者和项目负责人,以便他们可以直接相互联系,而不是通过电子邮件向工程组中的每个人发送更新信息。我尝试拼接两个不同的代码来实现这一点,因为我无法找到可以轻松适应我们目标的代码。我在下面列出了我用来写我所拥有的代码的链接 代码告诉我无效的电子邮件:并突出显示MailApp.sendEmail
function SendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; //First row of data to process
var numRows = 2; //Number of rows to process
// Fetch the range of cells A2:L3
var dataRange = sheet.getRange(startRow, 1, numRows, 12)
// 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 requestername = row[1]; // Second column
var emailAddr = row[2]; // Third column
var requestspecifics = row[5]; // Sixth column
var projectlead = row[6]; // Seventh column
var projectleademail = ""; // Tenth Column
else if (projectlead == "Tom Smith") {projectleademail = "tom@fakeemail.com";}
else if (projectlead == "Dick Smith") {projectleademail = "dick@fakeemail.com";}
else if (projectlead == "Harry Smith") {projectleademail = "harry@fakeemail.com";}
else if (projectlead == "none") {projectleademail = null;}
var emailSent = row[12]; // Last column
if (emailSent !=EMAIL_SENT) { // Prevents sending duplicates
var myheader = "Minor Engineering Projects Requests";
MailApp.sendEmail({
to:emailAddr,
subject:myheader
body:requestername + ", \n\n + requestspecifics + " \n\nThe request you
submitted, listed above, has been assigned to " + projectlead + ". \nPlease
contact this person with any concerns. \n\nThank You, \n\nEngineering",
cc:projectlead]);
sheet.getRange(startRow + i,12).setValue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is interrupted
SpreadsheetApp.flush();
}
}
}
我不知道上面的代码是否是您实际脚本的精确复制/粘贴,但如果是,它有很多语法错误,我希望能够更正,请尝试一下,如果您的电子表格结构正确,它应该可以工作
function SendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; //First row of data to process
var numRows = 2; //Number of rows to process
// Fetch the range of cells A2:L3
var dataRange = sheet.getRange(startRow, 1, numRows, 12)
// 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 requestername = row[1]; // Second column
var emailAddr = row[2]; // Third column
var requestspecifics = row[5]; // Sixth column
var projectlead = row[6]; // Seventh column
var projectleademail = ""; // Tenth Column
if (projectlead == "Tom Smith") {projectleademail = "tom@fakeemail.com";}
else if (projectlead == "Dick Smith") {projectleademail = "dick@fakeemail.com";}
else if (projectlead == "Harry Smith") {projectleademail = "harry@fakeemail.com";}
else if (projectlead == "none") {projectleademail = null;}
var emailSent = row[12]; // Last column
if (emailSent !="EMAIL_SENT") { // Prevents sending duplicates
var myheader = "Minor Engineering Projects Requests";
MailApp.sendEmail({
to:emailAddr,
subject:myheader,
body:requestername + ", \n\n" + requestspecifics + " \n\nThe request you"+
"submitted, listed above, has been assigned to " + projectlead +
". \nPlease contact this person with any concerns. \n\nThank You, \n\nEngineering",
cc:projectlead});
sheet.getRange(startRow + i,12).setValue("EMAIL_SENT");
// Make sure the cell is updated right away in case the script is interrupted
SpreadsheetApp.flush();
}
}
}