0

这是我的代码:

function calEvent(){
   var arrivalDate = "06/10/2013";
   var departureDate = "06/18/2013";
   var start = new Date(arrivalDate);
   var end = new Date(departureDate);

   var cal = CalendarApp.getCalendarById('id487g3esn088a00omqa99ugv0@group.calendar.google.com');
   cal.createEvent('Apollo 11 Landing',start,end);

}

当我运行它时,它将在正确的日历中创建事件,但它只会从 6 月 10 日到 6 月 17 日。我需要该事件覆盖 6 月 10 日到 6 月 18 日。

我检查了时区设置,电子表格、脚本和日历都在同一个时区(山地时间 GMT-7)

我怎样才能获得这个看似简单的代码来将事件设置在正确的日期?我尝试了几种日期格式(utilities.formatDate),但似乎无法获得正确的格式。

提前致谢。

4

1 回答 1

1

如何使用日历的时区设置日期对象的时区

几周前我提出了上述问题,并提出了一个可行的解决方案。不确定它是否是最好的,但你可以看看它是否有帮助。在为我的问题寻找解决方案时,我注意到了几件事。该脚本肯定使用脚本时区来创建日期对象。但是,当它发布到日历时,它会将日期调整为执行者默认的日历时区,而不是您正在编写的日历的时区。因此,如果用户的默认日历时区与写入您的日历不同,您将获得各种疯狂​​的时间

所以上面问题中列出的函数 gasTimezoneOffset() 是我的解决方案。

希望这可以帮助。

于 2013-05-07T13:48:51.407 回答