【问题标题】:Error with timezone into Google Forms with Apps Script使用 Apps 脚本将时区输入 Google 表单时出错
【发布时间】:2017-12-07 19:26:01
【问题描述】:

我有一个带有如下日期信息的 Google 表单:

enter image description here

我将这些信息与 Google Apps 脚本一起存储到 Google 电子表格中;但是在此电子表格中,它不存储正确的日期,而是存储其他日期。

enter image description here

我使用这个 Javascript 代码:

 var response = '2017-12-07 08:00'; //Value from Google Form
 var fecha_inicial = Utilities.formatString(response);
 fecha_inicial_Date = new Date(fecha_inicial.substr(0, 10) + "T" +
   fecha_inicial.substr(11, fecha_inicial.length)); //Thu Dec 07 2017 08:00:00 GMT-0500 (EST)

此表单在西班牙的 gmail 帐户中执行。

【问题讨论】:

  • 一方面,谷歌表格和谷歌应用程序脚本有自己的时区设置,不清楚你指的是什么问题。 Google 表单是否将错误的日期传递给 Google 表格,或者您是否使用脚本将表单响应中的数据传递给 Google 表格?

标签: javascript google-apps-script google-sheets timezone google-forms


【解决方案1】:

GMT-0500 不是西班牙的时区。西班牙是加一。所以 GMT-0500 和您的时区之间有 6 小时的差异。获取您的时区:

var myTimeZone = Session.getScriptTimeZone();//Get the scripts time zone

【讨论】:

    【解决方案2】:

    我猜这里的问题是,如何使表格日期和工作表日期相同?

    您是否尝试过在谷歌表格中更改日期列的格式?选择整列并在菜单中单击格式 -> 数字,然后选择所需的格式。

    如果您想在 App 脚本中操作时间戳,我建议使用矩库 - Mlj57Yi463PVmHumHxq4bkaUlUqvRc4KT 然后添加此代码以使用它:

      var moment = Moment.moment
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-20
      • 1970-01-01
      • 2021-11-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多