如何将电子邮件发送到每周更新的单元格范围内的多个地址?

时间:2013-12-03 20:52:08

标签: email google-apps-script

我是编程新手。我已经设置了一个谷歌电子表格,该电子表格会向即将进行作业的人发送每周电子邮件提醒。电子表格会自动提取每周分配的4个电子邮件地址,并将它们放在A1,B1,A2,B2(即A1:B2)中。我希望脚本能够找到4个电子邮件地址(每周更改一次)并将相同的电子邮件发送给所有这四个电子邮件地址。

当我将cc收件人硬编码到MailApp行时,它可以正常工作。但由于收件人列表每周更改,我想引用单元格A1:B2。当我尝试这样做时,我收到无效的电子邮件错误。调试器显示var ccrecipients正在拾取正确的单元格,但我认为问题在于它将其作为数组而不是字符串返回。只要我能够通过它来推理它。

我的代码的几个片段:

var ccrecipients = sheet.getRange('A1:B2').getValues();

MailApp.sendEmail(recipients, subject, "", {htmlBody: message, cc: ccrecipients});

提前感谢您的帮助。我非常依赖这些论坛来整理我拥有的代码。我总能找到答案,直到这一个。谢谢!

1 个答案:

答案 0 :(得分:0)

你的观察几乎是正确的,sheet.getRange('A1:B2').getValues();返回一个数组数组,类似于[[A1,B1],[A2,B2]] A& B表示单元格中的值以简化我的示例。

最终你需要的是一个“扁平”字符串,所有需要的收件人用逗号分隔"A1,B1,A2,B2"

最简单的方法是将整个事物弄平,这将创建一个带逗号分隔的字符串,这正是我们所需要的。

sheet.getRange('A1:B2').getValues().toString();

应该这样做; - )