Google Script字符串日期格式转换为日期格式

时间:2018-11-07 09:42:13

标签: google-apps-script

我从外部系统获取数据,它为我提供了日期格式,例如“ okt 21,2017”。使用谷歌脚本,我想将其更改为“ 2017-10-21”

我已经解决了这个问题,但是我得到了正确的结果。

Var test = "okt 21, 2017";
     range.setValue(new Date(test.getYear(),test.getMonth(),test.getDay()));
      //range.setValue(Utilities.formatDate(test, "GMT" , "yyyy-MM-dd"));

          //range.setValue(date(value).setNumberFormat("yyyy-MM-dd"));
          //range.setValue(new Date()).setNumberFormat("yyyy-MM-dd");

我得到的输出是:1970-01-01

解决方案,不是很好,但是可以解决

 switch (sheetName) { 
case "sheetnameeeee": 
      range.setValue(dateChange(value)).setNumberFormat("yyyy-MM-dd");
 break; 
} 

function dateChange(value) { 
var dateString = value; 
dateString = dateString.toString().replace("maa", "mar"); 
dateString = dateString.toString().replace("mei", "may"); 
dateString = dateString.toString().replace("okt", "oct"); 
return dateString;} 

1 个答案:

答案 0 :(得分:0)

解决方案:

  • 将电子表格语言环境设置为German
  • setValue(date string)直接。

代码段:

var test = "okt 21, 2017"; //Recognized date format in German-Google-Sheets
range.setValue(test).setNumberFormat('yyyy-MM-dd');
相关问题