如何在Google应用程序脚本中将时间戳“newDate()”格式化为新加坡时区

我在 google apps 脚本中有一个代码,当满足某些条件时打印时间戳。

我在 google apps 脚本中有一个代码,当满足某些条件时打印时间戳。

function onEdit(e){
  if (e.range.columnStart == 16 && e.range.rowStart >= 12) {
    if (e.value == 'Update' || e.value == 'Transmit') {
      e.range.offset(0, 1).setValue(new Date()).setNumberFormat("yyyy-MM-dd HH:mm:ss");
    } else {
      e.range.offset(0, 1).setValue('');
    }
  } else if (e.range.columnStart == 14 && e.range.rowStart >= 20) {
    if (e.value == 'Transmit') {
      e.range.offset(0, 1).setValue(new Date()).setNumberFormat("yyyy-MM-dd HH:mm:ss");
    } else {
      e.range.offset(0, 1).setValue('');
    }
  }
}

对于您的信息,当我使用谷歌工作表时,它是基于新加坡时区,但我认为来自不同时区的其他人会与我不同。

我想要实现的目标是为这些 Google 表格的所有用户(来自不同国家和不同时区)修复时区(基于新加坡时区),而不管他们的 Google 表格中的时区设置如何。我试图将其包含在setNumberFormat中,但似乎没有此功能的参数。我不确定是否可以实现新加坡时区,如果没有,那么至少基于纽约时区?

2

说明:

您应该使用Utilities.formatDate(date, timeZone, format)方法并指定Singapore的时区。

这里是所有timezone IDs的列表,您可以用于您的目的,您的情况下的 ID 将是Asia/Singapore

因此,这将为您提供新加坡的 corrent 格式和日期时间:

Utilities.formatDate(new Date(), 'Asia/Singapore', 'yyyy-MM-dd HH:mm:ss');

鉴于新加坡的时区是T+8,您可以直接使用它:

const dt = Utilities.formatDate(new Date(), 'T+8', 'yyyy-MM-dd HH:mm:ss');

解决方案:

function onEdit(e){
  const dt = Utilities.formatDate(new Date(), 'Asia/Singapore', 'yyyy-MM-dd HH:mm:ss');
  if (e.range.columnStart == 16 && e.range.rowStart >= 12) {
    if (e.value == 'Update' || e.value == 'Transmit') {
      e.range.offset(0, 1).setValue(dt);
    } else {
      e.range.offset(0, 1).setValue('');
    }
  } else if (e.range.columnStart == 14 && e.range.rowStart >= 20) {
    if (e.value == 'Transmit') {
      e.range.offset(0, 1).setValue(dt);
    } else {
      e.range.offset(0, 1).setValue('');
    }
  }
}

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(392)
在纯函数语言中 是否有一种算法来获取反函数(self inverse function)
上一篇
玩Gomoku的好AI策略是什么
下一篇

相关推荐

  • java date 计算时间差:从现在到指定日期的倒计时

    Java Date 类提供了一系列的方法来计算时间差。下面是一个示例代码,用于计算两个日期之间的时间差://设置两个日期…

    2023-02-27 15:49:18
    0 15 79
  • consolidate翻译:加强统一,实现发展

    示例示例翻译为“整合”或“巩固”。例如,以下代码将多个对象合并到一个对象中:…

    2023-01-26 06:20:01
    0 17 70
  • 宗地代码查询:在 VBA代码中运行更新查询(access vba update query)

    关于宗地代码查询的问题,在access vba update query中经常遇到,我正在尝试使用 Access 制作一个小型库存程序,但我没有太多知识,到目前为止我所做的任何事情都是通过 Google 搜索的东西。我已经设法制作了使用未绑定表单存储数据的代码,现在我想通过在未绑定表单中为另一个表输入的数据来更新表的某些特定字段。有问题的 2 个表是 Transaction 和 Stock。Stock 有 3 个字段 PartNo,Location 和 Q…

    2022-12-12 10:20:29
    0 65 37
  • 使用JavaLocalDate从当前日期减去会计年度季度

    通过使用 JavaLocalDate如何从当前季度中减去八个季度?…

    2022-12-13 01:23:59
    0 97 13
  • 在邮件合并中插入动态日期字段(insert auto date in word)

    这似乎是一个基本的问题,但我似乎无法弄清楚如何做到这一点。我想在顶部的邮件合并信中插入一个“日期”字段。我在 Word 2007 中找不到日期的任何字段。我希望此字段根据当前日期自动更新。…

    2022-11-11 15:17:52
    0 70 34
  • 如何在JavaDateUtils.parseDate中识别祖鲁时区

    我有格式为2008-12-23T00:00:00Z的日期。这看起来很像具有祖鲁(UTC)时区的ISO 8601 format。我虽然下面的代码将解析它(使用commons-lang):…

    2022-11-11 15:17:45
    0 79 14
  • 如何将Java中的DMYHH:MM:SS字符串转换为Julian Date

    我在 Java 中有一些字符串,格式为:Day Month Year Hour:Minute:Second…

    2022-11-11 15:11:52
    0 68 58
  • 电脑键盘指法:使用钢琴键盘作为电脑键盘(google piano keyboard)

    关于电脑键盘指法的问题,在google piano keyboard中经常遇到,我有RSI问题,并尝试了 30 种不同的计算机键盘,这些键盘都使我感到痛苦。弹钢琴不会引起我的痛苦。我弹钢琴已有 20 年了,没有任何痛苦的问题。我想知道是否有一种方法可以从 MIDI 键盘捕获 MIDI 并输出键盘笔划。我对 MIDI 一无所知,但我希望获得一些有关如何将此信号转换为击键的指导。…

    2022-12-13 06:20:30
    0 61 71

发表评论

登录 后才能评论

评论列表(33条)