如何更改 Google Forms Response 中的日期格式?

How to change date format in Google Forms Response?

我有一个 Google 表格来从客户那里获取我的送货单,在表格上我有日期字段。 表格的回复将根据回复自动填写到订购文件。 我使用这个脚本:

function autoFill(e) {
  var timestamp = e.values[0];
  var nama = e.values[1];
  var tglBuat = e.values[10];

  var file = DriveApp.getFileById(MY_TEMPLATE_FILE_ID); 
  var folder = DriveApp.getFolderById(OUTPUT_FOLDER_ID);

  var copy = file.makeCopy(nama+"_"+timestamp, folder); 
  var doc = DocumentApp.openById(copy.getId());
  var body = doc.getBody(); 

  body.replaceText('#NamaLengkap#', tglBuat);      
  body.replaceText('#TanggalDibuat#', tglBuat);

  doc.saveAndClose(); 
}

流程很简单:

  1. 我为订单文件准备了模板文件
  2. 客户填写表格
  3. 表单结果将保存在某些Google电子表格
  4. (3)上面的脚本,每次(2)提交都会触发
  5. 瞧,我有填写了客户订单详细信息的订单文档

我的模板文件是这样的:

Customer Name: #NamaLengkap#
Order Date: #TanggalDibuat#

我的问题出在日期格式上,我希望模板文件的输出使用这种格式“2020 年 8 月 26 日”,但 google 表格只提供这种格式“08/26/2020”。

如何修改?

我阅读了一些关于在填写表格之前更改电子邮件格式的文章,但我认为这不是一个好的解决方案。因为客户根本不关心。

解决方案

您只需获取日期并将其转换为日期字符串 Javascript 对象,如下所示:

function myFunction() {
  var shortDate =  new Date("03/25/2015");
  var longDateFormat = shortDate.toDateString();
  Logger.log(longDateFormat);
}

希望对您有所帮助。让我知道您是否需要其他任何东西或者您不明白什么。 :)