Google apps script 谷歌文档更新时如何向当前经理发送电子邮件?
这个想法是当google文档更新为一个新行(例如客户端ID)时,向该客户端的经理发送一封信。在我的文档中,我有客户ID列(1列)和电子邮件列(13列)。 这是我正在使用的代码:Google apps script 谷歌文档更新时如何向当前经理发送电子邮件?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,这个想法是当google文档更新为一个新行(例如客户端ID)时,向该客户端的经理发送一封信。在我的文档中,我有客户ID列(1列)和电子邮件列(13列)。 这是我正在使用的代码: function sendEmails() { var sheet = SpreadsheetApp.getActiveSheet(); var startRow = 9 // First row of data to process var numRows = sheet.getRange(13
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 9 // First row of data to process
var numRows = sheet.getRange(13,9).getValue(); // Number of rows to process is set by a formula
which counts rows COLUMN/ROW
var dataRange = sheet.getRange(startRow, 9, numRows, 1);
var data = dataRange.getValues();
for (var i in data) {
var row = data[i];
var emailAddress = row[13];
var message = 'New client';
var subject = 'Check';
MailApp.sendEmail(emailAddress, subject, message);
但这段代码不起作用,也不会发送带有更新的电子邮件。我可以更改什么来解决该问题?我是编程新手,请帮助。说明: 根据您的评论和描述,您希望在用户填写特定行时发送电子邮件 如果是这样的话,你需要一个触发器。要设置一个可安装的触发器,您可以在谷歌上搜索它或查看它,但您可以找到相关的资源
- 从第8行开始,在第
M列(
列)中添加电子邮件时,以下脚本将发送电子邮件13th
- 我推荐的方法是创建一个复选框,这样当用户勾选该复选框时,电子邮件就会发送。但这取决于你
只有当你为onEditEmail(e)创建了一个可安装的触发器,并且仔细阅读了我提供的解释后,这才有效。
想法是当google文档更新为新行(例如客户端ID)时,向该客户端的经理发送一封信,这与你的代码不匹配。您希望手动运行该功能或设置一个onEdit
触发器,以便用户在添加新行以发送电子邮件时?如果电子邮件位于13列中,则需要使用12
作为索引:var emailAddress=row[12]
您想手动运行该功能,还是设置onEdit触发器,以便在用户添加新行以发送电子邮件时?我想设置一个onEdit触发器,但我不知道它是如何工作的。我在尝试不同的方法。我也使用12作为索引,但这无论如何都不起作用。但谢谢你,我会改变这一刻
function onEditEmail(e){
const ss = e.source;
const ar = e.range;
const shn = "Sheet1"; // put the sheet name of your choice
const as = ss.getActiveSheet();
const row = ar.getRow();
const col = ar.getColumn();
if (as.getName()==shn && row>8 && col == 13){
const emailAddress = ar.getValue();
const message = 'New client';
const subject = 'Check';
MailApp.sendEmail(emailAddress, subject, message);
}
}