Utilities.formatDate 显示错误的日期 - 日期格式不正确
Utilities.formatDate displaying wrong date - incorrect date format
只要用户在评论栏中输入数据,我的代码就会更新日期栏(格式为日期)。
此脚本运行了一段时间,但随后停止运行。
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
if( s.getName() == "Sheet1" ) {
var r = s.getActiveCell();
if(r.getRow() > 2 && r.getColumn() == 6 && r.getValue()) {
var nextCell = r.offset(0, -1);
var time = new Date();
time = Utilities.formatDate(new Date(), "EST-05:00", "MM-DD-YY");
nextCell.setValue(time);
};
};
}
现在每当我更新评论部分时,我都会得到 2/35/15,这显然是不正确的。我不知道是什么导致了这个问题。如有任何帮助,我们将不胜感激。
我将您代码的日期部分更改为:它似乎有效。
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
var stringAsDate = "";
stringAsDate = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-yy");
Logger.log(stringAsDate);
}
完整代码为:
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
if( s.getName() == "Sheet1" ) {
var r = s.getActiveCell();
if(r.getRow() > 2 && r.getColumn() == 6 && r.getValue()) {
var nextCell = r.offset(0, -1);
var stringAsDate = "";
stringAsDate = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-yy");
nextCell.setValue(stringAsDate);
};
};
}
您不需要 time
变量。 Utilities.formatDate()
returns 一个字符串,所以将变量 time
设置为日期类型是没有意义的。
D
是年中的日期,而 d
是月中的日期。 DD
和 dd
是零填充版本。您可能要求一月份的第 300 天。
time = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-YY");
spec 应用脚本使用的是 Java。
只要用户在评论栏中输入数据,我的代码就会更新日期栏(格式为日期)。
此脚本运行了一段时间,但随后停止运行。
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
if( s.getName() == "Sheet1" ) {
var r = s.getActiveCell();
if(r.getRow() > 2 && r.getColumn() == 6 && r.getValue()) {
var nextCell = r.offset(0, -1);
var time = new Date();
time = Utilities.formatDate(new Date(), "EST-05:00", "MM-DD-YY");
nextCell.setValue(time);
};
};
}
现在每当我更新评论部分时,我都会得到 2/35/15,这显然是不正确的。我不知道是什么导致了这个问题。如有任何帮助,我们将不胜感激。
我将您代码的日期部分更改为:它似乎有效。
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
var stringAsDate = "";
stringAsDate = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-yy");
Logger.log(stringAsDate);
}
完整代码为:
function UpdateDate() {
var s = SpreadsheetApp.getActiveSheet();
if( s.getName() == "Sheet1" ) {
var r = s.getActiveCell();
if(r.getRow() > 2 && r.getColumn() == 6 && r.getValue()) {
var nextCell = r.offset(0, -1);
var stringAsDate = "";
stringAsDate = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-yy");
nextCell.setValue(stringAsDate);
};
};
}
您不需要 time
变量。 Utilities.formatDate()
returns 一个字符串,所以将变量 time
设置为日期类型是没有意义的。
D
是年中的日期,而 d
是月中的日期。 DD
和 dd
是零填充版本。您可能要求一月份的第 300 天。
time = Utilities.formatDate(new Date(), "EST-05:00", "MM-dd-YY");
spec 应用脚本使用的是 Java。