【问题标题】:Date format in body of email电子邮件正文中的日期格式
【发布时间】:2013-09-09 11:23:06
【问题描述】:

我正在使用一个非常基本的自动电子邮件脚本。我想发出的信息只是一个日期。在电子表格中,其格式为“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);
  }
}

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

【问题讨论】:

    标签: google-apps-script date-format email


    【解决方案1】:

    数据以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);
      }
    }
    

    【讨论】:

    • Srik 有正确的方法。完成此任务的另一种(较脏的)方法是简单地将电子表格中包含日期的列格式化为“纯文本”,它将被格式化为发送电子邮件的日期。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-02
    • 2020-05-09
    • 1970-01-01
    • 1970-01-01
    • 2016-02-23
    • 2013-11-11
    • 1970-01-01
    相关资源
    最近更新 更多