【发布时间】:2018-03-04 19:06:56
【问题描述】:
在电子表格中,J 列包含请求取货的公司名称。我想要的是要求取件的公司名称是电子邮件正文。例如,这将输入到单元格 J10 中。
在输入公司名称时只需发送一次。我已将脚本设置为运行“onEdit”。
以下是我目前所拥有的,如您所见,问题在于第 14 行 - var body:
/* This function send an email when a specified range is edited
* The spreadsheets triggers must be set to onEdit for the function
*/
function sendNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
// Get Active cell
var mycell = ss.getActiveSelection();
var cellcol = mycell.getColumn();
var cellrow = mycell.getRow();
// Define Notification Details
var recipients = "emailaddressn@domain.com";
var subject = "Pickup Entered";
var body = ss.getActiveSelection() + " has a pickup.";
if (cellcol == 10) {
// Send the Email
MailApp.sendEmail(recipients, subject, body);
}
} // End sendNotification
因此,最终司机会收到一封来自 Google 表格的电子邮件,主题为“Pickup Entered”,邮件正文为“Company ABC has apickup”。
更新:我找到了一个类似的脚本并对其进行了修改以适应它。这完全符合我的要求:
function sendNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
if(sheet.getName()=='Sheet1'){
var cell = ss.getActiveCell();
var cellcol = cell.getColumn();
if(cellcol == 10){
var cellvalue = ss.getActiveCell().getValue().toString();
var recipients = "emailaddress@domain.com";
var subject = 'Pickup Requested '+cellvalue;
var body = 'A new Pickup has been placed for ' + cellvalue + '. Please
coordinate with dispatch.';
MailApp.sendEmail(recipients, subject, body);}
}
}
谢谢
【问题讨论】:
-
欢迎来到 Stack Overflow! Stack Overflow 不是一个讨论论坛,它是一个问答网站,您可以在其中提出可以回答而不是讨论的特定编程问题。请阅读How do I ask a good question? 和What topics can I ask about here?,然后编辑您的问题以符合站点指南。诸如此类的离题问题通常会关闭,但如果经过编辑以提出可回答问题,则可以再次重新打开。谢谢。
标签: google-apps-script google-sheets