首页 > 解决方案 > 将今天的日期插入电子表格的脚本是错误的

问题描述

我正在为客户编写有界电子表格脚本,电子表格归他们所有。除其他许多事情外,脚本应该将今天的日期插入到 Google 表格电子表格单元格中。问题是插入的日期是错误的并且总是相同的。

我制作了电子表格的副本以尝试调试我的代码/找出错误的设置,但我无法重现问题,例如查看和使用电子表格和脚本项目时区设置。

这是插入今天日期的“最小”代码

function customToday(){
  var now = new Date();
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = spreadsheet.getSheets()[0];
  var range = sheet.getRange('A1');
  range.setValue(now.getFullYear(),now.getMonth(),now.getDay())

}

用其他值替换now.getDay()不会改变结果。

标签: datetimegoogle-apps-scriptgoogle-sheetstimezoneregional-settings

解决方案


我终于查看了原始电子表格设置。区域设置为空白,时区设置为太平洋时间,而不是电子表格所有者的默认时区。

在我看来,区域和时区设置以某种方式被破坏了。将区域设置更改为客户端默认国家和时区解决了该问题。


推荐阅读