0

我正在使用一个非常基本的自动电子邮件脚本。我想发出的信息只是一个日期。在电子表格中,其格式为“06/11/2013”​​,但在收到电子邮件时,它在电子邮件正文中显示为“Wed Nov 06 2013 00:00:00 GMT-0000 (GMT)”。

我希望它在电子邮件正文中显示为格式,就像它在电子表格中的日期一样。有没有办法做到这一点?这是我正在使用的(非常基本的)脚本:

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = 2;   // Number of rows to process

  var dataRange = sheet.getRange(startRow, 1, numRows, 2)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[0];  // First column
    var message = row[1];       // Second column
    var subject = "Date";
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

不是一个非常高级的用户,但任何帮助将不胜感激!

4

1 回答 1

2

数据在电子表格中存储为Date,因此在最终内容中显示为Date。使用 将Utilities.formatDate其转换为字符串

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = 2;   // Number of rows to process

  var dataRange = sheet.getRange(startRow, 1, numRows, 2)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[0];  // First column
    var message = Utilities.formatDate(row[1], "GMT" , "dd/MM/yyyy" );       // Second column
    var subject = "Date";
    MailApp.sendEmail(emailAddress, subject, message);
  }
}
于 2013-09-09T11:50:03.523 回答