簡體   English   中英

如何在Google Script中格式化日期

[英]How to format Date in Google Script

我正在嘗試編寫一個小型Google腳本,該腳本從Google Sheet的某些單元格中獲取數據並將其粘貼到GMAIL中。 但是,在粘貼“日期值”時,它始終以下列方式顯示: -

  • 2019年4月15日星期一00:00:00 GMT + 0530(IST)
  • 周五至周五2019 00:00:00 GMT + 0530(IST)

但我需要以適當的方式約會,即

  • “2019年4月15日星期一”或
  • “星期五04/26/2019”

我經歷了這些可能的選項,即Utilities.formatDate.Split但不知怎的,我無法正確編寫這些代碼。 你能幫我解決這個問題嗎? 下面我詳細提到了整個問題。

我的守則

function temp2() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var dataSheet = ss.getSheetByName('Sheet1');
  var templateSheet = ss.getSheetByName('Sheet2');
  var emailTemplate2 = templateSheet.getRange("G1").getValue();
  var rec = templateSheet.getRange("C1").getValue();
  var sub = templateSheet.getRange("D1").getValue();
  var date = templateSheet.getRange("E1").getValue();
//  Logger.log(rec);
  MailApp.sendEmail(rec, sub, emailTemplate2);

}

這里var date = templateSheet.getRange("E1").getValue(); 是選擇日期值的代碼的一部分。

如果你需要更多這方面的細節,請告訴我。問候,Alok

需求:

從Google Apps腳本中的單元格格式化日期值。


解:

將值傳遞給日期構造函數new Date()然后使用Utilities.formatDate()進行格式化。

// pass date to date constructor
var date = new Date(templateSheet.getRange("E1").getValue());

// "Mon Apr 15 2019" example
var formattedDate = Utilities.formatDate(date, "GMT+0", 'E MMM dd yyyy');

// "Fri 04/26/2019" example
var formattedDate = Utilities.formatDate(date, "GMT+0", 'E MM/dd/yyyy');

注意 :我默認將此設置為時區“GMT + 0”,您可以將其更改為您需要的任何時區。


參考文獻:

  1. 日期構造函數的new Date()
  2. Utilities.formatDate()用於格式化Google Apps腳本中的日期。
  3. SimpleDateFormat用於日期格式字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM