从Google表格中检索的日期中删除时间和时区

时间:2016-07-20 14:06:10

标签: google-apps-script google-sheets

我有一个Google表格电子表格,与Squarespace网站上的表格相关联。我找到并根据我的需求编辑了一个脚本,该脚本自动填充并根据通过表单输入电子表格的新信息发送电子邮件。

Google似乎在#00; 00:00:00 GMT + 0100(BST)"在电子邮件发送的每个日期结束时,有没有办法阻止这种情况发生?我所需要的只是所有客户在表格上输入的日,月和年。

以下代码:

function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var numCurrent = sheet.getRange(2,10).getValue();
var numOld = sheet.getRange(2,11).getValue();
var numRecord = numCurrent+1;
// MailApp.sendEmail("hello@example.ie", "Debug", "Current subscribers: " + numCurrent + "Old subscribers: " + numOld);
if (numCurrent > numOld){
 var strSubject = sheet.getRange(numRecord,4).getValue();
 var strVenue = sheet.getRange(numRecord,5).getValue();
 var strEnquirerEmail = sheet.getRange(numRecord,3).getValue();
 var strEnquirerName = sheet.getRange(numRecord,2).getValue();
 var strEnquirerMessage = sheet.getRange(numRecord,6).getValue();
 var strMessageBody = "Name: " + strEnquirerName + "\n\n Email: " + strEnquirerEmail + "\n\n Venue: " + strVenue + "\n\n Event Date: " + strSubject + "\n\n Message: " + strEnquirerMessage; 
 MailApp.sendEmail("hello@example.ie", strEnquirerEmail, "Event Date: " + strSubject, strMessageBody);
 sheet.getRange(2,11).setValue(numCurrent);
}
}

1 个答案:

答案 0 :(得分:1)

要以您喜欢的格式显示日期,请使用Utilities.formatDate方法。示例:

var strSubject = Utilities.formatDate(sheet.getRange(numRecord,4).getValue(), Session.getScriptTimeZone(), "yyyy-MM-dd");

使用当前时区将日期格式设置为2016-07-20。其他格式的示例可以在SimpleDateFormat page上找到。