我在Google电子表格后面有一个脚本,一旦完成某行的某些单元格,就会发送一封电子邮件。该脚本通过发送到多个硬编码的电子邮件地址来工作。如何将当前用户的电子邮件地址添加为第二个CC?其中一个CC是硬编码的,但第二个更改取决于更新电子表格的人。我知道如何获取电子邮件地址,但如何将其作为变量传递,以便实际获得CC-ed?
var currentemail = Session.getActiveUser().getEmail();
var options = {cc: 'Session.getActiveUser().getEmail(), someotheremail@domain.com'};
或
var options = {cc:' currentemail,someotheremail@domain.com'};
GmailApp.sendEmail(email, subject, body, options);
显然这些不起作用:)。
非常感谢提前
答案 0 :(得分:1)
这可以像下面这样做:
function sendWithCc(){
var currentemail = Session.getActiveUser().getEmail();
var options = {};// create object
options['cc'] = currentemail+',someotheremail@domain.com';// add key & values (comma separated in a string)
GmailApp.sendEmail('somemail@domain.com', 'subject', 'body', options);
// I stringified 'subject' and 'body' to make that test work without defining values for it
}
答案 1 :(得分:0)
您的示例应修改如下:
var options = {cc: Session.getActiveUser().getEmail()+', someotheremail@domain.com'};
或者
var options = {cc: currentemail+', someotheremail@domain.com'};
您无法在字符串中调用函数或引用变量。相反,使用+运算符将变量的值(或函数调用的返回值)与字符串连接。
请注意,根据将使用此代码的上下文,脚本可能无权访问用户标识。请参阅GetActiveUser()下的注释:https://developers.google.com/apps-script/reference/base/session#getActiveUser()