我有一个日期格式设置为“ 2019年11月2日,星期六”的单元格。
但是当我查找带有脚本的单元格日期时,该休假一天了(-1)。
var date = new Date();
date = sheet_log.getRange(110, 1).getValue();
var dateDisplay = sheet_log.getRange(110, 1).getDisplayValue();
// date = Fri Nov 01 2019 18:00:00 GMT-0600 (CST)
// dateDisplay = Sat, Nov 2, 2019
为什么Google表格可以让我使用日历选择器设置日期,却可以在脚本中计算减去一天的日期?
有什么办法解决吗?
答案 0 :(得分:1)
这个答案怎么样?请认为这只是几个可能的答案之一。
尽管我不确定您的实际情况,例如,电子表格的时区值和脚本的时区值不同,但是这种情况可能会发生。
getValue()
检索的值遵循脚本的时区。getDisplayValue()
检索的值遵循电子表格的时区。可以通过以下脚本确认两个时区。
var timezone1 = SpreadsheetApp.getActiveSpreadsheet().getSpreadsheetTimeZone();
var timezone2 = Session.getScriptTimeZone();
Logger.log(timezone1)
Logger.log(timezone2)
timezone1
与timezone2
不同,则认为问题的原因是由于不同的时区。在这种情况下,请设置电子表格或脚本的时区。timezone1
与timezone2
相同,则认为问题的原因不是由于时区。因此,需要进行更多调查以弄清问题的原因。如果我误解了你的情况,我表示歉意。