【问题标题】:Import Cell Range New Line Google Sheets导入单元格范围新行 Google 表格
【发布时间】:2019-11-12 14:19:25
【问题描述】:

我正在尝试将一列导入 Google 表格,然后通过电子邮件发送。

但是,它目前将列中的每个单元格放在电子邮件的同一行,用逗号分隔。

function sendEmails() {
    var emails = ['example@example','example2@example.com'];
    // Get Message
    var messageContents = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email").getRange("H3:H20").getValues();//Double quotes added by editor. See edit history
    //Send Emails
    var subject = "Example";
    MailApp.sendEmail(emails, subject, messageContents);
}

有没有办法让它把每个单元格放在一个新行上,因为它们目前在电子表格中。

谢谢

【问题讨论】:

  • 试试messageContents.join("\n")

标签: google-apps-script google-sheets


【解决方案1】:

在你定义messageContents之后添加这一行:

messageContents = messageContents.join("\n");

join() 方法将数组中的所有元素连接成一个新字符串。您可以将分隔符设置为参数,在我们的示例中为 \n,这会创建一个新行。

这个方法不会修改原来的变量,所以你要把join()的结果赋值给messageContents

所以完整的代码应该是这样的:

function sendEmails() {
  var emails = ['example@example','example2@example.com'];
  // Get Message
  var messageContents = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email").getRange("H3:H20").getValues();//Double quotes added by editor. See edit history
  messageContents = messageContents.join("\n");
  //Send Emails
  var subject = "Example";
  MailApp.sendEmail(emails, subject, messageContents);
}

希望对你有帮助。

【讨论】:

    最近更新 更多